的最后部分返回值是否有办法有三元运算符一样做这个?:有没有办法不从三元运算
if (SomeBool)
SomeStringProperty = SomeValue;
我可以这样做:
SomeStringProperty = someBool ? SomeValue : SomeStringProperty;
但是,即使SomeBool为false(右),这将触发SomeStringProperty的getter和settor?所以它不会和上面的说法一样。
我知道解决方案是不使用三元运算符,但我只是想知道是否有办法忽略表达式的最后部分。
如果用'Console.WriteLine('? – SLaks
)代替'SomeStringProperty ='那该怎么办?这就像是问我可以用减法运算符来划分吗? – Will
三元运算符不是问题。问题是你想要抑制与三元运算符无关的*赋值操作,并且抑制赋值操作的方法是不执行赋值操作 –