In C#, arguments or parameters can be passed by reference or value. When you pass an argument by reference to a method, property, or constructor, the value of the parameter will be changed and the changes made will be retained when the method or constructor goes out of scope. With the use of the out keyword, you can pass a method's argument as a reference in C#. Prior to C# 7, to use the out keyword, you had to declare a variable before passing it as an out argument to a method:
class Program{ static void Main(string[] args) { string firstName, lastName; GetNames(out firstName, out lastName); } private static void GetNames(out string firstName, out string lastName) { firstName="John"; lastName="Doe"; }}
In C# 7, you can now pass ...