黑马程序员技术交流社区

标题: 关于值类型和引用类型的经典比较题目 [打印本页]

作者: popoluno    时间: 2013-7-6 16:20
标题: 关于值类型和引用类型的经典比较题目
下面的程序结果为
20
20
30
40
求解释

namespace 值与引用
{
    class MyClass
    {
         public int var;
    }
    class MyStruct
    {
         public int var;
    }
    class Program
    {
         static void Main(string [] args)
        {
              MyClass ObjectA=new MyClass();
              MyClass ObjectB=ObjectA;
              ObjectA.var=10;
              ObjectB.var=20;
              MyStruct StructA=new MyStruct();
              MyStruct StructB=ObjectA;
              StructA.var=30;
              StructB.var=40;
              Console.WriteLine(ObjectA.var);
              Console.WriteLine(ObjectB.var);
              Console.WriteLine(StructA.var);
              Console.WriteLine(StructB.var);
             Console.ReadKey();
         }

    }
}

作者: changweihua    时间: 2013-7-6 16:44
本帖最后由 changweihua 于 2013-7-6 16:49 编辑

楼主确定能得到上述结果?MyStruct和MyClass能转换吗,
作者: Candy小烨    时间: 2013-7-6 19:19
2楼说的没错  都没有继承关系  也没有显示类型转换 应该不能引用对象吧
作者: 风雪再现    时间: 2013-7-7 09:37
不知道你怎么运行的,你的程序写的有错误,两个不存在继承关系的类,无法隐式转换的,而且这只是引用类型的练习和值类型无关呀
作者: popoluno    时间: 2013-7-7 16:28
Candy小烨 发表于 2013-7-6 19:19
2楼说的没错  都没有继承关系  也没有显示类型转换 应该不能引用对象吧

发错了,我重新发了一遍帖子  
作者: popoluno    时间: 2013-7-7 16:29
风雪再现 发表于 2013-7-7 09:37
不知道你怎么运行的,你的程序写的有错误,两个不存在继承关系的类,无法隐式转换的,而且这只是引用类型的 ...

发错了,我重新发了一遍帖子  




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2