包含文件中的 Typdef "未在此范围内声明"
Typdef from included file 'was not declared in this scope'
我试图使用一个在包含的头文件中声明的typedef,但我得到了以下错误:
error: ‘Status’ was not declared in this scope
Status status;
^
typedef是在文件中包含的头中声明的。
Server.hh(简化版(:
class myClass {
public:
typedef mynamespace::Status Status;
...
}
ClientServer.cc:
#include "Server.hh"
...
Status status; // error thrown here
这种方法有问题吗?如何使typedef在多个文件中可用?
typedef
、using
和namespace
都是编写语句的代码块的本地。您必须将Server.hh
重组为
typedef mynamespace::Status Status;
class myClass {
public:
...
}
以便Server.cc
访问它,因为typedef
将在最外面的代码块中。
相关文章:
- 错误:未在此范围内声明'reverse'
- 错误:"imread"未在此范围内声明
- 未在此范围内声明错误 'xy'
- Socklen_t未在此范围内声明
- 错误:'[' 之前预期的非限定 id 和错误:'users'未在此范围内声明
- "Main"已在当前范围内声明
- c++ 变量在宏的扩展中没有在这个范围内声明
- C++ 在编译过程中 strtok 函数 Eclipse 说没有在范围内声明?
- 'num1'未在此范围内声明
- 如何找到在本地范围内声明的变量的地址?
- NT状态未在此范围内声明
- 变量未在此范围内声明 数组线性搜索
- 包含文件中的 Typdef "未在此范围内声明"
- 'ClassName'和'ClassInstance'未在此范围内声明
- C++ 中的类之间的数据重新循环 - 错误:'<class name>'未在此范围内声明
- 代码作为 C 文件工作,但不作为C++文件,错误:'__builtin_types_compatible_p'未在此范围内声明
- 如何修复错误:"vreinterpretq_u32_f64"未在此范围内声明 - 在Android上使用Eigen构建
- 如何修复C++中的"arrStud未在此范围内声明"错误
- 错误:"SHGetKnownFolderPath"未在此范围内声明
- 错误:'Sprite'未在此范围内声明