While passing Argument To Any Method Having ref and out keyword, In the
following program we can see that while calling method math1 we have to
initialized a variable as int b=0; and same while calling math2 it is optional
to initialized a variable for passing argument.
lets see a small program.
namespace
OOPSProject
{
class Program
{
//No Input & Output
void Test1()
{
Console.WriteLine("First
method");
}
//No Output has Input
void Test2(int
x)
{
Console.WriteLine("Second
method: " + x);
}
//No Input has Output
string Test3()
{
return
"Third method";
}
//Has Input & Output
string Test4(string
name)
{
return
"Hello " + name;
}
//Returning multiple values:
int Math1(int
x, int y, ref
int z)
{
z = x * y;
return x + y;
}
int Math2(int
x, int y, out
int z)
{
z = x * y;
return x + y;
}
static void
Main(string[] args)
{
Program p =
new Program();
p.Test1(); p.Test2(100);
Console.WriteLine(p.Test3());
Console.WriteLine(p.Test4("Raju"));
int b = 0;
//Initialization is mandatory
int a = p.Math1(100, 50,
ref b);
Console.WriteLine(a +
" " + b);
int n;
//Initialization is optional
int m = p.Math2(100, 50,
out n);
Console.WriteLine(m +
" " + n);
Console.ReadLine();
}