初学C# ,一直没有搞明白什么是值类型,什么是引用类型数据,能不能给点易懂的说法??感谢!

解决方案 »

  1.   

    值:int,float,bool(简单的类型)
    引用类型:自定义的 比如:类...    (也就是类似传说中的指针)
      

  2.   

    值就是被struct关键字定义的类型
    类就是被class关键字定义的类型值不能继承,用的时候系统自动调用其默认构造,
    类能继承,用的时候自己决定调用构造,struct A{ public int x;public int y;}
    class B{public int x;public int y;}A的话应该在内存的栈中已经被分配了x是int类型占4个字节,所以
    A一共占8个字节B的话如果不调用构造函数那么B是一个引用,好象是2个字节,如果调用new
    象这样B b=new B();(默认构造)那么它占2+8=10个字节其中后8个字节在内存的堆中.前面的2个字节是IntPrt类型在栈中.不知道我理解对没有.