我正在寫一些C++代碼,我想調用兩個函數(checkXDirty
和checkYDirty
),並且返回true
,如果返回true
。我需要評估這兩種即使一個返回true
,所以我首先想到的是用是(bool | bool)安全嗎?
return checkXDirty() | checkYDirty();
這看起來有點怪異(髒,也許)。這總是會在C++中產生正確的結果嗎?怎麼樣C,與_Bool
類型? (這段代碼最終可能適用於任何一種語言,並且當我移植代碼時,我不希望出現令人不快的意外)。
Okey,okey。那麼,我會說這是一個非常糟糕的主意,讓'isSomething()'函數帶有副作用。 – Andrey 2013-02-21 00:32:24
@Andrey:好點。我將把函數重命名爲「check ...」。 – nneonneo 2013-02-21 00:33:24
@MitchWheat它們具有按位或正好以避免短路評估。 – juanchopanza 2013-02-21 00:33:38