Existe uma diferença entre argumentos e parâmetros?


15

Pode ser assim: Parâmetro significa a partir do chamador POV e argumentos significam dentro do procedimento, ou vice-versa.

Ou não há diferença?

Atualizar

Em sueco, dizemos "anropsparametrar", ou seja, "parâmetros que estão chamando o procedimento" e não diríamos "anropsargument" ("argumentos que estão chamando o procedimento").


1
vai depender do contexto, que você se refere
Yusubov

2
Por favor, procure na próxima vez: stackoverflow.com/questions/3176310/…
Overv 12/12/12

1
@ Overv Mesmo esse é um duplicado. Esta pergunta foi feita um bilhão de vezes. Não posso acreditar que uma recompensa foi definida.
Alternatex

Respostas:


31

De acordo com o artigo do MSDN, existem algumas diferenças de definição entre o que é chamado parâmetro e o que é chamado argumento:

Parâmetro:

Um parâmetro representa um valor que o procedimento espera que você transmita quando você o chama. A declaração do procedimento define seus parâmetros.

Argumento:

Um argumento representa o valor que você passa para um parâmetro de procedimento quando você chama o procedimento. O código de chamada fornece os argumentos quando chama o procedimento.

Também há uma ótima citação de como entender isso no exemplo da vida real :

Para comunicar essas informações ao procedimento, o procedimento define um parâmetro e o código de chamada passa um argumento para esse parâmetro. Você pode pensar no parâmetro como um local de estacionamento e o argumento como um automóvel. Assim como automóveis diferentes podem estacionar no estacionamento em momentos diferentes, o código de chamada pode passar um argumento diferente para o mesmo parâmetro sempre que chamar o procedimento.


5
A especificação da linguagem C # concorda com isso. Por exemplo, a seção "1.6.6.1 Parâmetros" afirma que "Os parâmetros de um método obtêm seus valores reais dos argumentos especificados quando o método é chamado".
akton
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.