我正在爲一個項目使用最近的1.5.2版本的POCO C++庫,並且每次我編譯我的項目時,都會在POCO代碼中得到上述「錯誤」。我說「錯誤」是因爲它們顯示爲錯誤,但它們並不妨礙我編譯,鏈接或執行我的項目。智能感知:無效的對齊說明符值
的錯誤出現在 「基金會/包含/ POCO/alignment.h」:
POCO_ALIGNEDCHARARRAY_TEMPLATE_ALIGNMENT(512);
POCO_ALIGNEDCHARARRAY_TEMPLATE_ALIGNMENT(1024);
POCO_ALIGNEDCHARARRAY_TEMPLATE_ALIGNMENT(2048);
POCO_ALIGNEDCHARARRAY_TEMPLATE_ALIGNMENT(4096);
POCO_ALIGNEDCHARARRAY_TEMPLATE_ALIGNMENT(8192);
較低的值(16,32,64,128)不產生誤差。
我有兩個問題:
- 究竟是上面的代碼試圖做?
- 他們爲什麼會產生錯誤,我該如何擺脫它們?
我使用buildwin.cmd具有以下配置構建POCO:
VS_VERSION 100
ACTION build
LINKMODE static_mt
CONFIGURATION both
PLATFORM Win32
有趣的是,實際的錯誤信息實際上只是「智能感知:無效的對齊說明符值」,這似乎是表明它是某種IDE「錯誤」而不是構建/編譯器錯誤。編譯器編譯輸出不會產生與這些錯誤相關的任何內容。 – pqvst
@pbergqvist,請參閱更新,Intellisense和編譯器不一定同意對齊的上限。 – paxdiablo