正如它所说的那样。我将要在我正在编写的程序中定义一个常量或静态值,并且对于为什么要使用其中一个而感到困惑。正如the only related question我在问这个问题时会得到一个想要立即标记为静态和常数的人,我怀疑我不是唯一一个对这些概念有点失落的人。
那么我为什么要使用静态?为什么我会使用常量?有什么区别?他们是同义词吗?如果是这样,那很酷,但如果不是,为什么不呢?谢谢!
答案 0 :(得分:11)
const
在编译时处理。每个对该常量的引用都被常量值替换。
static
非常不同。它是一个仅存在一次但属于该类型的所有对象的变量。它可以编辑,除非标记为readonly
(或给定一个getter但没有setter)。如果它被标记为readonly
那么它本质上是一个常量,但它是在运行时处理的,而不是由编译器处理的。
答案 1 :(得分:5)
首先,他们不是同义词。
为了更好地了解static
的使用方式,请阅读Static Classes and Static Members
。
答案 2 :(得分:1)
五分钟后我才知道this。
还有其他意见吗?