我有一个在运行时永远不会改变的常量值,但直到运行时才知道。
有没有办法在不定义常量的情况下声明一个常量(作为类的成员或不作为一个成员),并且还分配一个计算值一次(并且只有一次)它被确定;还是我将不得不诉诸非常量声明并使用编码标准普尔(ALL_CAPS
变量名称,static
如果在类中的声明等)来尝试防止它发生变化?
澄清:
尽管这些都是很好的答案,但我的实际情况要复杂得多:
该程序有一个在处理和渲染之间不断运行的主循环;用户可以设置所需的选项,一旦设置,它们将永远不会改变,直到程序重新启动。为在主循环之前可以确定的任何内容设置“初始化”功能,但必须在处理阶段的循环中间执行取决于用户交互的值。(目前,持久性数据存储技术浮现在脑海中......)