const变量会不会改变?

时间:2016-09-22 04:43:01

标签: c# variables constants

我试图弄清楚如何在另一个方法中复制一个Start()方法,关于如何在整个开始定义而不是更新(例如,如果我在Start()中记录一个名为StartTime的变量并将其设置为Time.time)。在方法内创建并设置为另一个变量的值的常量整数是否保持不变?例如,这是我的代码:

const int originalAmount = data.amount;

以后,data.amount降低/提高。原始数量是否等于第一次设置时,或等于新的data.amount值,如果它等于新值,我还有另一种方法可以在定义时定义一个等于另一个变量的变量吗?感谢您给我的任何帮助,只是在理解这一点时遇到了一些麻烦!

编辑:另外,这个int是在for循环中定义的,而originalAmount应该更新为每个循环的当前data.amount,这是正确的吗?

1 个答案:

答案 0 :(得分:3)

与常量变量相关的规则很少。

  1. 常量变量必须在声明时初始化。
  2. 不能更改常量变量的值。
  3. 但是,如果您在声明时不确定常量的值,那么您可以使用readonly。

    1. 只能为只读变量赋值一次。
    2. 无法更改已分配的值。
    3. 由于常量变量必须在声明时初始化,并且您无法使用变量对其进行初始化,因为常量变量在编译时初始化。因此,您可以在for循环中编写一个常量变量,但它仅在编译时分配值。