c++ - 使用 __uuidof 运算符会给出扩展使用警告

标签 c++

我正在关注 DX11 示例,我想清理我的代码以免出现任何警告。我目前正在尝试删除这个:

在这段代码中:

result = CreateDXGIFactory(__uuidof(IDXGIFactory),
                           reinterpret_cast<void**>(&factory));

我收到以下警告:

d3drenderclass.cpp:41:32: warning: extension used

我什至不确定这是什么,也无法在网上找到太多帮助。我应该如何输入此代码才能消除警告?

如果通过重写代码无法避免此警告,我可以关闭警告吗?我要起诉 Qt Creator。

最佳答案

因此,您可以做两件事(也许更多)中的一件。如果您想使用 clang-cl 编译器,请在“offending”行周围加上 warning off/on pragmas:

#pragma clang diagnostic ignored "-Wlanguage-extension-token"
result = CreateDXGIFactory(__uuidof(IDXGIFactory),
                           reinterpret_cast<void**>(&factory));
#pragma clang diagnostic warning "-Wlanguage-extension-token"

或者,或者,通过转到项目“常规”设置并选择 Visual Studio …" 工具集来切换到 MSVC 编译器。

关于c++ - 使用 __uuidof 运算符会给出扩展使用警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57738113/

相关文章:

c++ - 编译时检查 sizeof...(args) 是否匹配 constexpr 函数的结果

c++ - Winsock TCP 监听器在 closesocket() 调用成功后保持在 LISTENING 状态

c++ - 用于 OpenCv C++ 中像素像素操作的 Mat 与数组

c++ - 从 x 到 y 算法打印素数

java - 使用 CORBA 进行 Java/C++ 互操作的最佳 ORB 是什么?

c++ - 我面对 :Error 2 error C3861: 'fx' : identifier not found

c++ - 将派生类列表传递给需要 C++ 中基类列表的函数

c++ - 没有typedef返回成员函数指针的语法是什么?

c++ - 当我使用 C++11 兼容编译器编译 boost 1.48\1.47 代码时,我最终会得到像 share_ptr 这样的东西的标准实现吗?

c++ - 如何为类提供几个可变参数模板模板参数