Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在我从DirectX SDK更改为Windows SDK后,链接器一直显示错误_C++_Linker_Direct3d_Direct3d11 - Fatal编程技术网

C++ 在我从DirectX SDK更改为Windows SDK后,链接器一直显示错误

C++ 在我从DirectX SDK更改为Windows SDK后,链接器一直显示错误,c++,linker,direct3d,direct3d11,C++,Linker,Direct3d,Direct3d11,我刚刚删除了DirectX SDK中包含的所有头文件,并转向Windows SDK,但一旦删除,链接器就会不断抱怨“未解析的外部符号”。链接器显示了大约24个错误,其中大多数错误与我在游戏中没有使用的函数有关 链接器错误:错误LNK2001:未解析的外部符号“union\UUUM128\UUUU矢量调用DirectX::XMVectorMultiply(union\UUUM128,union\UUUUM128) 错误LNK2001:未解析的外部符号“union\UUUM128\UUUUU矢量调用

我刚刚删除了DirectX SDK中包含的所有头文件,并转向Windows SDK,但一旦删除,链接器就会不断抱怨“未解析的外部符号”。链接器显示了大约24个错误,其中大多数错误与我在游戏中没有使用的函数有关

链接器错误:
错误LNK2001:未解析的外部符号“union\UUUM128\UUUU矢量调用DirectX::XMVectorMultiply(union\UUUM128,union\UUUUM128)

错误LNK2001:
未解析的外部符号“union\UUUM128\UUUUU矢量调用DirectX::XMVectorSubtract(union\UUUM128,union\UUUUM128)

错误LNK2001:
未解析的外部符号“union\uuuum128\uuuuuuuu vectorcall DirectX::XMVector3Normalize(union\uuuum128)

错误LNK2001:
未解析的外部符号“union”\uuuuum128\uuuuuuuu矢量调用DirectX::XMVectorSet(float,float,float,float)

我没有在我的应用程序中使用XMVector3Normalize()、XMVectorSubtract()和XMVectorMultiply(),但我确实使用了XMVectorSet()

这些函数中的大多数都是DirectXMath.h的一部分,所以这里可能有什么问题

无论如何,我不知道这是否有帮助,但下面是我在应用程序中使用的所有标题

#include <windows.h>
#include <D3D11.h>                      
#include <dinput.h> 
#include <SimpleMath.h>
#include <D3Dcompiler.h>
#include <sstream>
#include <SpriteFont.h>      //This file also includes DirectXMath.h
#include <DDSTextureLoader.h>
#include <WICTextureLoader.h>

#pragma comment (lib, "D3D11.lib")
#pragma comment (lib, "dinput8.lib")
#pragma comment (lib, "dxguid.lib")
#pragma comment (lib, "d3dcompiler.lib")
#包括
#包括
#包括
#包括
#包括
#包括
#include//此文件还包括DirectXMath.h
#包括
#包括
#pragma注释(lib,“D3D11.lib”)
#pragma注释(lib,“dinput8.lib”)
#pragma注释(lib,“dxguid.lib”)
#pragma注释(lib,“d3dcompiler.lib”)
如何解决这些链接器问题?我已经使用Visual Studio 2015中的Project->Properties->VC++目录->Include目录和库目录链接了适当的库和标题


在过去的一个小时左右,我一直在努力解决这个问题。有人能帮我吗?

可能它们被SpriteFont中的某个东西使用了。h
SpriteFont.h
不使用任何函数。但是它包括标题
SpriteBatch.h
,这个标题包括
DirectXMath.h
DirectXColors.h
functional
memory
d3d11_1.h
有人能给我一些建议吗?你确定你删除了所有的DX引用(在包含方面)?这里似乎有一个间接的。includes(编译阶段)和libs(链接阶段)必须同步:如果(直接或间接)使用.h文件中的某些func,则必须针对相应的.lib进行链接。链接错误没有指定未定义符号的引用位置吗?可能重复