【发布时间】:2016-08-13 16:43:08
【问题描述】:
private static string Test = a ? "test" : "hello";
private static bool a = Test == "test";
这些似乎相互依赖,但在编译时变为 a = false" Test = "hello" 无论顺序如何。我认为这与布尔值设置为 false 有关,但如果有人可以解释如何这样编译就好了。
【问题讨论】:
-
顺序无关紧要,因为您在两种情况下都得到相同的结果。如果您先设置
a,则Test将是null,如果您先设置Test,则a将是false。
标签: c# static initialization