2012-08-07 98 views
0

有人能告訴我這是什麼C#語法確切指的是:Registry.GetValue():問題與return語句的語法

return (int)MyPersistenceClass.GetValue(REG_ENTRY_HHHH, DEFAULT_REG_ENTRY_HHHH) == 1 

它是正確的說,如果(INT)的GetValue()== 1回價值。我不確定什麼時候返回(int)GetValue()!= 1.什麼幫助非常感謝。

回答

0

一個簡單的三元聲明會爲你工作:

return (int)MyPersistenceClass.GetValue(REG_ENTRY_HHHH, DEFAULT_REG_ENTRY_HHHH) == 1 ? 1 : 0; 

所以,如果的GetValue()== 1,返回值。否則,返回0.

1

這裏有幾個語法位。

MyPersistenceClass.GetValue(REG_ENTRY_HHHH, DEFAULT_REG_ENTRY_HHHH)(可能)是從註冊表中讀取值的靜態方法調用。

(int)x是鑄造表達式轉換xint,所以(int)MyPersistenceClass.GetValue(REG_ENTRY_HHHH, DEFAULT_REG_ENTRY_HHHH)轉換從註冊表中讀取到int的值。

==equality operator。它比較兩件事情,並返回bool值:true如果它們相同,則返回false,如果它們不是。

return x評估x,使結果成爲函數的返回值並退出函數。

把它放在一起,你的代碼從註冊表中讀取一個值。該值將轉換爲int並與1進行比較。如果值爲1,則函數返回true,否則返回false

+0

感謝arx。你最後一句話是我一直在尋找的,但感謝你的解釋。它肯定會幫助別人。 – Dun 2012-08-17 13:43:47