gpt4 book ai didi

c# - CLR 对不可变结构做了什么?

转载 作者:行者123 更新时间:2023-11-30 20:11:40 25 4
gpt4 key购买 nike

我已经阅读了一些关于 immutable structures 的内容比如字符串。简而言之,它们一旦创建就不会改变状态(因此,例如,请求一个子字符串会为您提供一个新字符串)。

现在,我想知道 CLR 是否“知道”某种类型是不可变的,并利用这一事实在运行时做一些聪明的事情,或者不可变性主要是为了简化某些场景的编程?

最佳答案

一般来说,CLR 不会对不可变类型做任何特殊的事情。它们的处理方式与任何其他类型相同。

对于字符串有特殊的支持。字符串可以被保留和重用。在 C# 中,源代码字符串文字由编译器自动驻留。您也可以通过调用 String.Intern 自己实习一个字符串。 .

关于c# - CLR 对不可变结构做了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3434146/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com