参数修饰符out
举例
- 如果AddNumber方法的参数用out修饰,那么必须在调用AddNumber方法的Main方法中用out修饰参数
- 在被调用的AddNumber方法中必须对参数赋初值,而在Main方法中可以不给参数赋初值
- out参数修饰符是把参数的值传到方法外面
static void Main(string[] args)
{
int number1;
int number2 = 20;
int sum = AddNumber(out number1, number2);
Console.WriteLine(number1 );//number1的值为90
Console.WriteLine(number2 );//number2的值为20
Console.WriteLine(sum);//sum的值为100
Console.ReadKey();
}
public static int AddNumber(out int num1, int num2)
{
num1 = 90;
return num1 + 10;
}
参数修饰符ref
举例
- ref必须在调用Show方法的Main方法中对参数赋初值,而在被调用的Show方法中,可以不赋初值
- ref参数修饰符既可以把参数的值传到方法外面去,也可以把参数值传到方法内
static void Main(string[] args)
{
int number1 = 10;
int number2 = 20;
int sum = Show(ref number1, ref number2);
Console.WriteLine(number1 );//100
Console.WriteLine(number2);//200
Console.WriteLine(sum);//300
Console.ReadKey();
}
public static int Show(ref int num1, ref int num2)
{
num1 = 100;
num2 = 200;
return num1 + num2;
}