當爲整數創建自定義typedef時,編譯器在使用默認數字類型時可能會發出警告嗎?在編譯器中禁用默認數字類型
例如,
typedef int_fast32_t kint;
int_fast32_t test=0;//Would be ok
kint test=0; //Would be ok
int test=0; //Would throw a warning or error
我們轉換一個大項目和默認int
尺寸上的平臺是32767
這是造成一些問題。此警告會警告用戶不要在代碼中使用整數。
如果可能的話,如果這可以在GCC和VC++ 2012上工作,那將會很棒。
如果沒有其他方法:'#define int #warning(); int'或者只是'#define int not-complied-abracadabra'來強制錯誤 – RiaD 2012-08-12 21:20:42
不,你不能在宏定義中使用預處理器指令,並且該語法不會起作用。 – 2012-08-12 21:22:38
@Keith但是你可以使用'_Pragma' /'__pragma'。通過宏重新定義關鍵字是不合法的,但它可能會起作用。我不確定這是否是一個好主意,即使除了實際考慮之外。 – 2012-08-12 21:32:15