C#中有两种类型
1.值类型(value type)
2.引用类型(reference type)
值类型的变量直接包括他们的数据,而引用类型的变量存储对它们的数据的引用,后者称为对象.
值类型:简单类型(simple type) , 枚举类型(enum type) 和结构类型(struct type).
引用类型:类类型(class type) , 接口类型(interface type) , 数组类型(arry type) 和委托类型(delegate type)
示例:
class
MyClass
{
public int i;
}
class Test
{
static void Main()
{
MyClass mc = new MyClass();
mc.i = 100 ;
MyClass mc1 = mc ;
mc1.i = 200 ;
Console.WriteLine( " mc.i= " + mc.i);
Console.WriteLine( " mc1.i= " + mc1 .i );
Console.ReadKey();
}
}
{
public int i;
}
class Test
{
static void Main()
{
MyClass mc = new MyClass();
mc.i = 100 ;
MyClass mc1 = mc ;
mc1.i = 200 ;
Console.WriteLine( " mc.i= " + mc.i);
Console.WriteLine( " mc1.i= " + mc1 .i );
Console.ReadKey();
}
}
输出:
mc.i=200;
mc1.i=200;
说明:
struct
MyClass
//
注意改变了这个值.
{
public int i;
}
class Test
{
static void Main()
{
MyClass mc = new MyClass();
mc.i = 100 ;
MyClass mc1 = mc ;
mc1.i = 200 ;
Console.WriteLine( " mc.i= " + mc.i);
Console.WriteLine( " mc1.i= " + mc1 .i );
Console.ReadKey();
}
}
{
public int i;
}
class Test
{
static void Main()
{
MyClass mc = new MyClass();
mc.i = 100 ;
MyClass mc1 = mc ;
mc1.i = 200 ;
Console.WriteLine( " mc.i= " + mc.i);
Console.WriteLine( " mc1.i= " + mc1 .i );
Console.ReadKey();
}
}
输出:
mc.i=100;
mc1.i=200;