我剛剛發現了一種內聯方式,如果(A?B:C)在switch語句中無法按預期方式工作。 其中A是一個布爾型,B和C都是不等於0的整數。當置於開關內部時,此語句的結果爲0。 我找到了一個stackoverflow post [1]這個行爲被提及但我找不到任何解釋爲什麼這不起作用,因爲我期望。這是什麼造成的? 例如: int foo = 6;
switch(foo)
{
case 6:
public class Foo : IFooBarable {...}
public class Bar : IFooBarable {...}
那麼爲什麼會這樣不會編譯... int a = 1;
IFooBarable ting = a == 1 ? new Foo() : new Bar();
但這會... IFooBarable ting = a == 1 ? new Foo
我想減少If ... Then ... Else語句的代碼量並嘗試使用IIf(expression,true,false)來設置變量。我有一個問題,在某種程度上變量設置爲0,這是很煩人的。 例如: 'Declarations for testing (changing currenty to work for bot and top)
xval = 15
currenty = 20
lar