CPP 头文件结构错误
CPP Header file struct error
这是我的标题level.h
:
#ifndef LEVEL_H_
#define LEVEL_H_
#include <string>
#include <map>
#include <queue>
#include <list>
typedef struct {
std::string title;
int stepsAmount;
std::queue <std::list <char> > steps;
std::queue <std::map <std::string, int> > stepsOptions;
} Level;
std::string getCurrentStepExpression(Level* level);
#endif
而我的level.cpp
:
#include "level.h"
std::string getCurrentStepExpression(Level* level) {
std::string result;
if (level)
result = level->stepExpressions.front();
return result;
}
一切似乎都很好,但编译者说:
..level.cpp: In function 'std::string getCurrentStepExpression(Level*)':
..level.cpp:12:19: error: 'struct Level' has no member named 'stepExpressions'
为什么它看不到我的结构字段?
你需要将stepExpressions 成员或stepExpressions()方法添加到你的结构Level 中,并传入一些索引来分步查找。
struct Level {
std::string title;
int stepsAmount;
std::queue <std::list <char> > steps;
std::queue <std::map <std::string, int> > stepsOptions;
/* add the method stepExpressions to your class */
std::list& stepExpressions(int step);
};
stepExpressions
不是结构的一部分。尝试添加它。
相关文章:
- 防止在C++中选择错误文件时提升 xml 解析器崩溃
- 导致Segmentation错误的结构中的矢量
- Windows 将标准的 C 文件结构注入到正在运行的进程中
- AMQP-CPP >处理程序中的错误文件描述符
- Xcode OSX上的C++构建失败,出现多个错误文件IO..不可用:在macOS 10.15中引入
- 如何读取/查询文件系统和文件结构
- 为什么生成文件返回 g++: 错误: h 文件或目录 make: *** [生成文件:12: 测试] 错误 1?
- 错误将结构复制到同一类型的另一种
- C++/Python 中对象和结构的二进制文件结构
- 无法找出此错误(将结构数组传递给函数):线程 1:EXC_BAD_ACCESS(代码 = 1,地址 = 0x1)
- 在 C++ 和 C# 之间共享内存映射文件结构
- 在文件结构中使用字符串而不是带有 read() 和 write() 的字符数组
- 警告:打开错误文件(/build/opencv/modules/videoio/src/cap_ffmpeg_impl.
- 错误LNK2005结构已在.obj文件中定义
- OpenCV格式化程序类和Mat对象的cout产生链接器错误:体系结构x86_64的未定义符号:libopencv_co
- 分段错误 - 更改结构(在另一个结构内)变量
- C++ while 循环在自定义文件结构中
- Ubuntu C++ 编译器错误: g++: 错误: 文件.cpp: 没有这样的文件或目录
- c++ 编译错误 - 体系结构x86_64的未定义符号
- CPP 头文件结构错误