在我的C++代碼中,我必須在兩種情況下執行某些代碼:由於預處理器宏或布爾變量檢查。例如:結合預處理器宏和變量
bool done=false;
#ifdef _DEBUG
executeDebugCode();
done=true;
#endif
if (inputParam && !done)
executeDebugCode();
是否有寫上面的代碼以更優雅的方式,但不重複executeDebugCode()
函數調用兩次的方法嗎?
編輯: 的executeDebugCode()
功能將被一次執行,如果這兩個條件之一滿足。例如,一個只能在DEBUG模式下執行的函數,可以通過預處理器宏或命令行參數來設置。
你的問題有點不清楚。如果滿足*條件或只有滿足*兩者,才能調用功能?如果兩者都符合,是否應該被稱爲一次或兩次? – Angew 2014-10-29 10:04:47
@Angew假設縮短的「更優雅」的方式應該與上面的代碼具有相同的行爲。 – Columbo 2014-10-29 10:06:24
編輯得更清楚。對不起,以後通常會回答一些答案和評論。 – ABCplus 2014-10-29 10:13:07