C# 基本数据类型

C# 中有两种基本数据类型:值类型和引用类型。

值类型是直接存储它的数据内容,而引用类型存储的是对象的引用,这两种类型对变量的赋值有着不同的含义。

值类型包括:简单类型、结构类型、枚举类型;引用类型包括:Object 类型、类类型、接口、代表元、字符串类型、数组。

值类型示例

int m = 0;
int n = m;
m = 1; //此时 n 仍然是 0,因为 m 和 n 的数据存储在不同的区域

引用类型示例

class CFoo
{
    public int n;
}

void Main()
{
    CFoo f1 = new CFoo();
    f1.n = 0;
    CFoo f2 = f1;
    f1.n = 1; //此时 f2.n 变成了 1,因为 f2 与 f1 的内容是同一地址
}

值类型

值类型有:byte(1)、sbyte(1)、short(2)、ushort(2)、int(4)、uint(4)、long(8)、ulong(8)、float(4)、double(8)、decimal(8)、char、bool、枚举、结构。

上述中括号中的数字表示字节数,byte、ushort、uint、ulong 为无符号类型(没有负数),顺便说一下 sbyte 是有符号的字节。

这些类型是.NET Framework 类型的别名的别名,具体对应关系,请参见由 String 与 string 引出的。

引用类型

引用类型有:对象类型、类类型、接口、代表元、字符串类型、数组。

虽然字符串类型(string)是引用类型,但微软为了我们设计方便,重载了其中的一些操作符,使得它应用起来就像是值类型一样。

网友评论

  • 答案怎么这么多错误的(124.160.*.* 2007-10-19 20:55:39)

你可能感兴趣的