I wish to directly modify a variable’s value outside of a method from inside it.
Pointers are the way, correct?
How?
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
No. In c# you can apply pass by reference semantics using the
reforoutmodifiers:The difference between these two, is that with
out, the caller does not have to specify a value when calling the method, since it is required that the called method will assign a value before exiting.In C#, “pointers” are something that you can only use in unsafe code. As in C or C++, pointers in C# allow you to refer to the location of a variable or an object. References, in C# are different – you shouldn’t think of them as pointers – they are intended to be more opaque and provide a way to “refer” to a variable or object without necessarily implying that they indicate its location in memory.
With references, you can use special keywords (
out,ref) to pass an alias to a variable. These are only available in the context of method calls – where the compiler can use information about the lifetime of the referents to make sure that the reference does not outlive the original variable being aliased.