Есть ли разница между аргументами и параметрами?


15

Это может быть так: Параметр означает от POV вызывающих, а аргументы означают внутри процедуры, или наоборот.

Или нет разницы?

Обновить

В шведском языке мы говорим «anropsparametrar», то есть «параметры, которые вызывают процедуру», и мы не будем говорить «anropsargument» («аргументы, которые вызывают процедуру»).


1
это будет зависеть от контекста, на который вы ссылаетесь
Юсубов

2
Пожалуйста, ищите в следующий раз: stackoverflow.com/questions/3176310/…
Overv

1
@ Overver Даже этот дубликат. Этот вопрос задавался миллиард раз. Не могу поверить, что щедрость была установлена.
Alternatex

Ответы:


31

Согласно статье MSDN, есть некоторые различия в определении того, что называется параметром и что называется аргументом:

Параметр:

Параметр представляет значение, которое процедура ожидает от вас при вызове. Объявление процедуры определяет ее параметры.

Аргумент:

Аргумент представляет значение, которое вы передаете параметру процедуры при вызове процедуры. Вызывающий код предоставляет аргументы при вызове процедуры.

Также есть отличная цитата, как это понять на примере из реальной жизни :

Чтобы передать эту информацию процедуре, процедура определяет параметр, и вызывающий код передает аргумент этому параметру. Вы можете рассматривать параметр как место для парковки, а аргумент - как автомобиль. Так же, как разные автомобили могут парковаться на парковке в разное время, вызывающий код может передавать разные аргументы одному и тому же параметру при каждом вызове процедуры.


5
Спецификация языка C # согласна с этим. Например, раздел «1.6.6.1 Параметры» гласит, что «Параметры метода получают свои фактические значения из аргументов, которые указываются при вызове метода».
Актон
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.