c# - 为什么 C# 不允许只读局部变量?

标签 c# immutability language-design readonly

<分区>

就此与同事进行了友好的辩论。我们对此有一些想法,但想知道 SO 人群对此有何看法?

最佳答案

我认为这是部分 C# 架构师的错误判断。局部变量的 readonly 修饰符有助于保持程序的正确性(就像断言一样),并可能帮助编译器优化代码(至少在其他语言的情况下)。它现在在 C# 中被禁止的事实是另一个论点,即 C# 的某些“功能”仅仅是其创建者个人编码风格的强制执行。

关于c# - 为什么 C# 不允许只读局部变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/443687/

相关文章:

java - 编写简单语言的解析器

c# - WPF C# 以编程方式添加事件处理程序

c# - 如何在一个值中构建具有变量 1 到 4 字节的结构?

c# - 为 byte[] 调用 Initialize() 的结果是什么?

optimization - 功能程序是否已采用 SSA 形式?

functional-programming - 纯函数式语言真的能保证不变性吗?

oop - 为什么 Rust 不支持特征对象向上转换?

c# - 从自定义安装程序类操作更新 <appname>.config 文件

具有动态字段的Scala案例类复制构造函数

language-features - 某些编程功能何时以及以何种语言引入?