我在步调试时遇到一些代码问题(vs2017 .net framework 3.5,debug mode) 这是代码
class Program {
static void Main(string[] args) {
DataParameter para = new DataParameter("12");
}
}
enum TestEnum {
A,
B,
C
}
class DataParameter {
private bool c33;
public DataParameter(string name) {
TestEnum ta = TestEnum.A;
c33 = ta == TestEnum.A || ta == TestEnum.B;//after execute :c33 = false
Name = name;//after execute :c33 = true
}
public string Name { get; set; }
}
答案 0 :(得分:0)
添加断点时,它会在执行代码之前停止。因此,当它在第24行停止时,尚未完成对c33的分配,并且c33具有bool成员的默认值,这是假的。执行第24行后,它会按预期设置为true。