0
我將項目的警告級別設置爲4,並意識到#pragma warning(pop)
在包含afxwin時似乎在發佈版本中失敗.H當在VS2012中包含afxwin.h時,使用#pragma警告(彈出)恢復警告狀態失敗(不調試)
這裏是一個再現代碼:
#pragma warning(push, 4)
void boo1()
{
auto x = 43;
}
#pragma warning(push)
#define _AFXDLL
#include <afxwin.h>
#pragma warning(pop)
void boo2()
{
auto x = 43;
}
在調試,我得到兩個消息
警告C4189: 'X':局部變量初始化但未被引用
每個boo
函數。 如果我切換到釋放狀態,我只能得到一個,第一個。
#include <afxwin.h>
行爲怪異,我不知道會發生什麼。看起來,VS 2013沒有這種行爲,除非我重新調整VS2013解決方案以使用v110 Visual Studio 2012平臺工具集。
我發現了一個不明顯的編譯器錯誤嗎?