String是一种引用类型,即使它具有值类型的大多数特性,例如是不可变的并且具有==重载以比较文本而不是确保它们引用相同的对象.
为什么字符串不是一个值类型呢?
c# string clr value-type reference-type
我在接受采访时被问到这个问题:字符串是引用类型还是值类型.
我说它是一个引用类型.然后他问我为什么不在初始化字符串时使用new运算符?我说因为c#语言有一个更简单的语法来创建一个字符串,编译器会自动将代码转换为对System.String类的construcor的调用.
这个答案是否正确?
.net c#
c# ×2
.net ×1
clr ×1
reference-type ×1
string ×1
value-type ×1