找不到DirectX名称空间

时间:2015-05-18 01:41:40

标签: c++ windows directx

Visual Studio Professional 2013

Windows 7

x32,x64处理器

我正在使用DirectX 11,似乎有一个奇怪的问题。我一直能够在我的应用程序中访问DirectX命名空间。这已不再是这种情况。我可以做一个简单的课程说

// A.h

#include <d3d11.h>
#pragma comment(lib, "d3d11.lib")

class A {

}

如果我尝试使用完全引用的类型

DirectX::ID3D11Device* mDevice;

我也没有像我使用的那样使用intellisense显示DirectX名称空间。

最重要的是我可以使用

ID3D11Device* device;

在课堂上没有任何问题,所有编译都很好。

Visual Studio 2013 Profesional找到d3d11.h文件的路径是

C:\Program Files (x86)\Windows Kits\8.1\Include\um

知道为什么会这样吗?我搜索了很多地方,但没有发现任何相同的性质。

1 个答案:

答案 0 :(得分:2)

标准的Windows Win32 API位于“全局”命名空间中。

DirectX C ++命名空间由DirectXMathDirectX Tool KitDirectXTexDirectXMesh使用。基本上我是作者的一切:)

DX C ++命名空间中有一些助手,用于Windows 8商店,Windows手机,Xbox One的标准VS模板,以及用于{10}的Windows 10的通用Windows应用程序ThrowIfFailed,也用于我的非官方StepTimer

Windows Runtime(WinRT)API遵循最初为.NET组件创建的命名约定,位于标准WindowsMicrosoft C ++命名空间中。