从头文件中的名称空间访问类型

用户名

访问头文件中的名称空间似乎有问题。最好的解释方式是通过示例:


我在执行此操作时遇到编译器错误:

Game.h:

#pragma once

struct Game
{
//some other stuff here
private:
    glm::mat4 projection;
};

Game.cpp:

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

#include "Game.h"

这是错误:

'glm' is not a class or namespace name
'projection': unknown override specifier
missing type specifier - int assumed. Note: C++ does not support default-int

但是,这样做很好:

Game.h:

#pragma once

struct Game
{
//some other stuff here
};

Game.cpp:

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

#include "Game.h"

glm::mat4 projection;

令我感到困扰的是,尽管在命名空间文件中可以使用命名空间,但是在头文件中找不到命名空间。

Visual Studio识别名称空间存在(编辑器中没有下划线),但是在编译时突然不存在该名称空间。

探戈

它在您的头文件中不可用,因为您没有包括它:

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

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

访问头文件中定义的名称空间中的元素

C ++中的头文件和名称空间

头文件和名称空间的混淆

如何将具有自动返回类型的功能从头文件包含到多个cpp文件中

头文件中的C ++模板,实现文件* .cc中的错误“错误:预期为类或名称空间”

从头文件中隐藏指针成员实现

如何从头文件的界面中隐藏“帮助函数”

从头文件调用函数

从包含的子文件(php)访问父文件中的名称空间

为什么我不能在头文件中单独写入名称空间的层次结构?

命名空间“ bar”中的“ Foo”未在头文件中命名对象成员的类型

头文件,无需显式写入名称空间

C ++ / CX标头文件找不到Microsoft名称空间

从头文件访问带有auto关键字的推导方法调用

字符串类型是头文件还是标准命名空间?

如何包含名称中包含“>”的头文件?

在C ++中从头文件到源文件中实现typedef函数

是否可以从头文件输出变量?

我可以将一个名称空间“导入”到头文件中的另一个名称空间吗?

试图从头文件中的类调用函数但调试无法识别类或函数

未捕获的 ReferenceError:Papa 未定义。从头文件中的 cdn 加载

限制 C++ 头文件中的命名空间污染

XSLT:如何在同一篇文章中访问名称空间类型和没有名称空间类型的元素

使用名称空间访问扩展类中的$ this

访问Shiny模块中的父名称空间

C ++:如何访问相同名称空间中但在不同文件中定义的变量?

在头文件的私有名称空间中使用声明

如何在层次结构头文件中声明嵌套类型?

错误:函数类型冲突,函数在头文件中声明