【发布时间】:2012-01-15 09:40:53
【问题描述】:
我正在处理一个使用 DirectX 的 C 项目,但遇到了问题。某些 DX 调用需要IID 对象,通常使用__uuidof 生成。这需要做的一件事是创建一个 RenderTargetView。 DirectX 示例/教程这样做:
ID3D11Texture2D* pBackBuffer = NULL;
hr = g_pSwapChain->GetBuffer( 0, __uuidof( ID3D11Texture2D ), ( LPVOID* )&pBackBuffer );
当我尝试在我的 C 代码中调用 __uuidof 时,我收到编译器错误:Error 19 error C4233: nonstandard extension used : '__uuidof' keyword only supported in C++, not C。 DirectX 有一个 C 接口,所以我想一定有办法做到这一点,但我不知道它会是什么。有人知道吗?
【问题讨论】:
-
C 程序员通常只是将 UUID 定义为源文件中某处的常量。
标签: c visual-studio directx uuid guid