我使用C++进行编程,并使用DirectXTK附带的SpriteFont工具。我在类中声明的变量这样的:创建SpriteFont时的参数无效
std::unique_ptr<DirectX::SpriteFont> m_SpriteFont;
我初始化这样的:
m_SpriteFont = std::unique_ptr<SpriteFont>(new SpriteFont(m_d3dDevice.Get(), L"Assets\\TNR.spritefont"));
它给出了一个未处理的异常。通过该程序进行调试,似乎读取文件时出现问题。该文件是使用工具包附带的MakeSpriteFont.exe生成的。字体是Times New Roman,大小为12.我已经使用Visual Studio Solution Explorer将此文件添加到资产文件夹,并且文件本身位于正确的文件夹中。
这里有什么问题?我错过了什么吗?
任何帮助,将不胜感激。
只是让你知道:那是赋值,而不是初始化。你也可以做'm_SpriteFont.reset(新的SpriteFont(...))'。 – 2013-02-16 15:28:38
可能有必要将行中的各个部分分开以确定哪个引发异常并让我们知道异常的详细信息。 – 2013-02-16 15:33:26