C ++& GLM:name后跟::必须是类或命名空间名称(Visual Studio 2015)

时间:2015-08-19 04:01:09

标签: c++ namespaces visual-studio-2015 quaternions glm-math

我确信我已经正确地设置了所有内容,但必定会有一些我不知道的东西。我已将所有标题都包含在内:

#include<glm/glm.hpp>
#include<glm/gtc/matrix_transform.hpp>
#include<glm/gtc/type_ptr.hpp>
#include<glm/gtc/quaternion.hpp>

据我所知,所有这些都是有效的,因为代码会自行编译。 但是当我尝试编写以下代码时:

glm::mat4 view = glm::gtc::quaternion::mat4_cast(qview);

我收到错误&gt;&#39;:&#34;名称后跟::必须是类或命名空间名称&#34;

我到底错过了什么?我使用错误的命名空间吗?它符合文档所说的内容:http://glm.g-truc.net/0.9.0/api/a00135.html#ae2d14d52f9fef3da00cf867f9e2e3dfa

顺便提一下,如果&#39;逻辑&#39;我试图做的事情是错的(像这样分配mat4的值)请忽略它:当我到达它时我会解决这个问题。目前我只是试图用命名空间来诊断这个问题。

1 个答案:

答案 0 :(得分:1)

好吧,事实证明我引用了错误版本的文档。我使用的是0.9.7版本,我看到的文档是0.9.0。我正在尝试使用的函数被移动到这两个版本之间的glm命名空间,如果我这样做就可以正常工作

QFont f = font();
f.setCapitalization(QFont::AllUppercase);
lineEdit->setFont(f);