C#string 到底是引用类型还是值类型
2个回答
展开全部
String是引用类型。
但是它一经生成不可修改,修改String会导致新建一个地址来存放,像值类型一样。
String被编译器做了特殊处理。
一旦创建了一个string,在managed heap 上为他分配了一块连续的内存空间,我们将不能以任何方式对这个string进行修改使之变长、变短、改变格式。所有对这个string进行各项操作(比如调用ToUpper获得大写格式的string)而返回的string,实际上另一个重新创建的string,其本身并不会产生任何变化。
如满意,请采纳,谢谢。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询