ARTICLE

The out and ref Paramerter in C#

Posted by Mahesh Chand Articles | C# Language June 12, 2001
The out and the ref parameters are used to return values in the same variables, that you pass an an argument of a method. These both parameters are very useful when your method needs to return more than one values.
Reader Level:

The out and the ref parameters are used to return values in the same variables, that you pass an an argument of a method. These both parameters are very useful when your method needs to return more than one values.

In this article, I will explain how do you use these parameters in your C# applications.

The out Parameter

The out parameter can be used to return the values in the same variable passed as a parameter of the method. Any changes made to the parameter will be reflected in the variable.

public class mathClass
{
public static int TestOut(out int iVal1, out int iVal2)
{
iVal1 = 10;
iVal2 = 20;
return 0;
}
public static void Main()
{
int i, j; // variable need not be initialized
Console.WriteLine(TestOut(out i, out j));
Console.WriteLine(i);
Console.WriteLine(j);
}
}

The ref parameter

The ref keyword on a method parameter causes a method to refer to the same variable that was passed as an input parameter for the same method. If you do any changes to the variable, they will be reflected in the variable.

You can even use ref for more than one method parameters.

namespace TestRefP
{
using System;
public class myClass
{
public static void RefTest(ref int iVal1 )
{
iVal1 += 2;
}
public static void Main()
{
int i; // variable need to be initialized
i = 3;
RefTest(
ref i );
Console.WriteLine(i);
}
}
}

Login to add your contents and source code to this article
post comment
     

Aallaaaaa.............!

Posted by m kamran khalid ch Mar 10, 2013

The ref and out keywords are useful for the value type. Since value types are passed by value. If you want pass the value type as structure, you have to use ref or out modifier.

Posted by prathap Jan 01, 2013

Thanks!

Posted by Mahesh Chand May 30, 2012

good one

Posted by Balaji R May 11, 2012

Thansk for providing such a nice info about the ref and out paramaeter.

Posted by Yogesh Upreti Nov 17, 2011
COMMENT USING
PREMIUM SPONSORS
DynamicPDF™ product line allows you to dynamically generate PDF documents, merge PDF documents and add new content to existing PDF documents from within your applications.
Get Career Advice from Experts
SPONSORED BY
  • PDF reports have never been easier to create. With our included WYSIWYG Designer, you can layout your reports, set up your data source and let DynamicPDF ReportWriter do the rest.