c# - 为什么不能将结构声明为 const?

标签 c# struct stack constants

<分区>

它们是堆栈上的不可变值类型。是什么阻止我让它们成为常量?

引用资料:

最佳答案

因为值类型构造器可能任何 -- 例如,根据一天中的时间切换逻辑。常量值类型在智力上是有意义的,但由于构造函数可以随心所欲地灵活处理,因此它在实践中根本无法用于自定义值类型。 (请记住,常量是在编译时求值的,这意味着您的构造函数必须在编译时运行。)

关于c# - 为什么不能将结构声明为 const?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4590796/

相关文章:

c# - HTML敏捷包: illegal characters in path

c# - 将消息从网站发布到 Facebook 墙

c# - 系统.ServiceModel.CommunicationException : The underlying connection was closed

java - 用语言处理 racognizng 字符串的堆栈,不断出现错误,它是基于数组的实现

c# - 在堆栈中查找最长的字符序列

c - 使用最多 10 个值初始化堆栈

c# - 'CREATE VIEW' 必须是查询批处理中的第一个语句

c# - List<T> 和数组索引器有什么区别?

c - 在两个不同的头文件中的两个结构中包含循环依赖是错误的吗?

c - 为结构体赋值