Here we discuss the ref and out parameters in C#. They are basically parameters and we can use it in a different way.ref parameter: It is used as a call by reference in C#. It is used both places; when we declare a method and when we call the method. The following example will explain how we use the ref parameter in C#. In this example we create a function (cube) and pass a ref parameter in it, now we look at the value before we call the function and after we call the function:class TryRef{ public void cube(ref int x) { x= x * x * x; }}class Program{ static void Main(string[] args){ TryRef tr = new TryRef(); int y = 5; Console.WriteLine("The value of y before the function call: " + y); tr.cube(ref y); Console.WriteLine("The value of y after the function call: " + y); Console.ReadLine(); }}The output will be:
Now we take multiple ref parameters in our next program:class tryref{ public void mul(ref int i, ref int j) { j = i * j; }}class Program{ static void Main(string[] args) { tryref tf = new tryref(); int i = 5; int j = 10; Console.WriteLine("The value of i and j before the call :"+i+","+j); tf.mul(ref i, ref j); Console.WriteLine("The value of i and j after the call :" + i + "," + j); Console.ReadLine(); }}The output will be:
Out parameter: Sometimes we do not want to give an initial value to the parameter; in this case we use the out parameter. The declaration of the out parameter is the same as the ref parameter. But it is used to pass the value out of a method. Now we look at the example:class tryout{ public int mul(int a, out int b) { b = a * a; return b; }}class Program{ static void Main(string[] args) { tryout to = new tryout(); int x,y;
x = to.mul(10, out y); Console.WriteLine("The output is: "+x); Console.ReadLine(); }}The Output will be:
You need to be a premium member to use this feature. To access it, you'll have to upgrade your membership.
Become a sharper developer and jumpstart your career.
$0
$
. 00
monthly
For Basic members:
$20
For Premium members:
$45
For Elite members: