2010-12-03 81 views

回答

29

是的,它支持它 - 但它需要在未來聲明,而不是下一個。因此,例如:

int a = 0; 
int b = 0; 
if (someCondition) a = 1; b = 1; 
int c = 2; 

等同於:

int a = 0; 
int b = 0; 
if (someCondition) 
{ 
    a = 1; 
} 
b = 1; 
int c = 2; 

個人而言,我總是包括圍繞if報表的機構支撐,並且大多數編碼約定我遇到採取同樣的做法。

+6

最佳答案:包括解釋,代碼段和陷阱! – mlibby 2010-12-03 13:31:10

3

它像C/C++和Java一樣工作。沒有捲毛,它只包括下一個陳述。

+0

? – 2010-12-03 14:21:49

5
if (info == 8) 
{ 
    info = 4; 
} 
otherStuff(); 
0

當然「if」只適用於「info = 4」。

0

它只需要下一行,因此您的示例將編譯爲第二個可能的結果示例。

1

是的,它支持如果沒有括號的代碼塊,只有後的第一個語句,如果將包含在if塊,就像你的第二個例子

0

在C#中,如果語句根據括號運行命令。如果未給出括號,則在語句爲真時運行下一個命令,然後運行該命令。如果條件是假的,只是繼續進行下一個命令

因此你相信與支架,它也只能運行下面的語句

if(true) 
    method1(); 
method2(); 

將是相同

if(true) 
{ 
    method1(); 
} 
method2(); 
相關問題