C#相关
场景1: 类中的readonly关键字字段/数据成员只会初始化一次。因此,该类的多个实例将与该只读数据成员的不同值一起存在。该类中的方法和属性永远不会修改此数据成员。
场景2: 类中的const关键字字段/数据成员将在同一语句中声明和初始化一次。否则编译器会生成错误在这种情况下,标记为const的数据成员将为为此类创建的多个实例保留相同的值。
方案2也可以使用静态变量来实现。
那么为什么需要在C#中使用const关键字?
答案 0 :(得分:3)
静态变量可以随时更改 - 它们只是类类型中的单例。
只读变量只能在运行时设置一次。但是每次访问它们时都会从程序集中读取它们。它们可以是静态的或每个实例值。
Consts是编译时常量。它们不会在运行时进行评估,而是在编译客户端程序集时进行评估。如果希望,编译器可能会将它们内联到您的代码中。
Consts也可以在方法中使用,因此它们的值仅在方法范围内可用(与只读和静态不同)
Const,只读和静态因此彼此显着不同。