What is the difference between an argument & a parameter in C#?
Are they the same thing?
What is the difference between an argument & a parameter in C#?
Are they the same thing?
In the context of functions yes, they are the same, sometimes if you are talking about passing data to executables such as MyApp.exe /a:value /b:somethingelse, this might be refered to as arguments
Typically, I refer to command-line arguments, as arguments. Arguments to a method or function I typically call parameters.
However, this isn't convention and both can be used interchangeably without people getting confused.
Well, neither keyword is present in the language, so the question is somewhat vague. The best that can be done is to look how each term is used in C# language specification (1.6.6.1 "Parameters"):
Parameters are used to pass values or variable references to methods. The parameters of a method get their actual values from the arguments that are specified when the method is invoked.
So, "parameters" refer to names, and "arguments" refer to values bound to those names. E.g.:
void Foo(int x, int y); // x and y are parameters
Foo(1, 2); // 1 and 2 are arguments