4个回答
展开全部
广义上说,C#(及所有.NET语言)只分为值类型和引用类型,值类型就是定义好以后,默认为各类型的初始值(如int为0)对它的每次引用赋值都会新建一个副本。而引用类型定义好以后,默认为null,要初始化后才能用,并且对它的引用赋值不会新建副本:比较下面:
int a=0; int b=a; b=5;
这种情况,a不会变成5,因为int是值类型
Hashtable a, b;
a[0]=0; b=a; b[0]=4;
这种情况下a[0]会变成4,因为Hashtable是引用类型
C# 1.0的值类型:
int float long double char short byte datetime timespan 及用户定义struct
C# 2.0增加以下的值类型:
int? float? long? double? char? short? byte? datetime? timespan?
C# 3.0增加以下的值类型:
Tuple(匿名struct)
C#的引用类型:
除了上面提到的以外,所有的其他类型,如string, array, arraylist, hashtable, stack及用户定义的类都是引用类型
int a=0; int b=a; b=5;
这种情况,a不会变成5,因为int是值类型
Hashtable a, b;
a[0]=0; b=a; b[0]=4;
这种情况下a[0]会变成4,因为Hashtable是引用类型
C# 1.0的值类型:
int float long double char short byte datetime timespan 及用户定义struct
C# 2.0增加以下的值类型:
int? float? long? double? char? short? byte? datetime? timespan?
C# 3.0增加以下的值类型:
Tuple(匿名struct)
C#的引用类型:
除了上面提到的以外,所有的其他类型,如string, array, arraylist, hashtable, stack及用户定义的类都是引用类型
展开全部
C#的标准类型和C++基本一样,有包括int, long, float, double, char, string, arrays, structs , class等
值类型,单元直接存放“有效值”
引用类型,单元放的是另外一个对象的引用(地址)
鞋带叔叔:你能区分它们吗?
值类型,单元直接存放“有效值”
引用类型,单元放的是另外一个对象的引用(地址)
鞋带叔叔:你能区分它们吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
值类型和引用类型 还有一个就是泛型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
值类型和引用类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询