本帖最后由 weiwei10153 于 2014-2-27 19:13 编辑
求高手指导一下 ,代码在下面
本人最近刚学基础知识
第一个我知道输出18,但第二个为什么输出20?
ref不就是修饰的是引用类型吗?为什么加了ref输出结果不一致?
class Program
{
static void Main(string[] args)
{
Person p1 = new Person() { Age = 18 };
Test1(p1);
Console.WriteLine(p1.Age); //18
Test2(ref p1);
Console.WriteLine(p1.Age); //20 这个为什么是20 ?
Console.ReadKey();
}
static void Test1(Person p)
{
p = new Person() { Age = 20 };
}
static void Test2(ref Person p)
{
p = new Person() { Age = 20 };
}
}
class Person
{
public int Age { get; set; }
}
明白了,多谢!
|
-
1.png
(133.44 KB, 下载次数: 15)
|