带有头单元的宏重定义



我正在试验标题单元。目前,我正在Visual Studio 2022(Version 17.2.3)中进行测试。

我正在导入多个标头单元,例如

import <windows.h>;
import <thread>;

warning C4005: '__analysis_assume': macro redefinition 1>C:Program Files (x86)Windows Kits10Include10.0.22621.0sharedspecstrings_strict.h(933): message : see previous definition of '__analysis_assume'

这是有意义的,因为如果<thread><windows.h>有任何共享的头,通常包含保护或pragma会阻止它们被包含和被多次定义。

我真的不确定头单元如何工作,如果他们与宏共享头文件,大多数外部库的头文件使用。

我确信我可以忽略这个警告,但我很好奇其他人是否有更好的解决方案。

这似乎是使用windows.h时导入导致多个宏重新定义的已知问题。https://developercommunity.visualstudio.com/t/warning-C4005: -Outptr: -macro-redefinit/1546919

我们将不得不等待微软解决这个问题。

相关内容

  • 没有找到相关文章

最新更新