我有兩段代碼需要運行。 (不,我不允許改變他們中的任何一個)。在導致錯誤時使用do定義C++宏
第一塊定義一個宏
#define MACRO do { /* stuff in multiple lines and do not return a value */ } while (0)
第二件使用另一個宏在if
聲明
if (ANOTHER_MACRO) { /* do some stuff */ }
我需要ANOTHER_MACRO
使用MACRO
,我能定義ANOTHER_MACRO
。
我認爲一個inline
函數是正確的方式來做到這一點,但既不使用宏,也不使用函數我可以得到它的工作。有什麼建議麼?
所以你需要做的東西里面的條件,而不是隻提供一個條件? – chris
你爲什麼甚至浪費時間與宏?這是C++,而不是C,並且年份是2015年,而不是1985年 - 使用(內聯)函數。 –
嘗試內聯或lambda表達式... – FalconUA