public struct Char
{
public const char MaxValue = (char)0xffff;
public const char MinValue = '\0';
}
为什么不将此字段设为静态?什么为它总是为每个char分配额外的内存,而这两个值是永久的?
编辑:我不知道如何忘记静态隐藏!
答案 0 :(得分:13)
const字段是隐含的。从规范的第10.4节开始:
即使考虑了常数 静态成员,常量声明 既不需要也不允许静态 修改。这是一个错误 修饰符在a中出现多次 不断声明。
答案 1 :(得分:10)
因为它们是静态的。
Const字段是隐式静态的。