因为一些原因开始学习C#
我希望能有个平台将我学习过程中的一些点记录保存下来
全凭个人心情,如果以后买了ipad之后就会用ipad来记录
这是我人生中的第一篇博客,没什么深层次的东西
是关于C#中ref参数与out参数的区别
第一次看书的时候没仔细
忽略掉了一下内容,所以觉得这两个东西的行为没什么差别,然后我开始认真看书
它们两个的区别就是在函数或者方法引用前是否需要初始化
以下举两个例子:
out参数
using System;
namespace ConsoleApp1
{
public class Program
{
static void SomeFunction(out int i)
{
i = 100;
}
public static int Main()
{
int i;
Console.WriteLine("Calling SomeFunction.");
SomeFunction(out i);
Console.WriteLine("i = " + i);
return 0;
}
}
}
ref参数
using System;
namespace ConsoleApp1
{
public class Program
{
static void SomeFunction(ref int i)
{
i = 100;
}
public static int Main()
{
int i;
i = 0;
Console.WriteLine("Calling SomeFunction.");
SomeFunction(ref i);
Console.WriteLine("i = " + i);
return 0;
}
}
}
很容易看出out在传入类方法前并未初始化,而这两个参数都可以用作将值类型变量引用调用
此博客仅做最基本最表面的区分
如将来又遇到更深入的问题,本人也会写出
新手上路请多多关照