无法识别的类函数副本
Unidentifiable Class Function Copy
所以,我目前正在开发一个基于文本的角色扮演游戏,我在处理角色的物品栏时遇到了一个奇怪的问题。我收到以下错误:
qualified-id in declaration before '(' token
此错误位于我的Inventory.cpp
类中的以下代码行中:
void Inventory::addItem(Item *I){...}
当然,我意识到这还不够信息,所以这里是Inventory.h
和Inventory.cpp
的所有编码:
在Inventory.h
:
#ifndef INVENTORY_H
#define INVENTORY_H
#include "Item.h"
#include <string>
const int BACKPACK_SIZE = 16;
class Inventory
{
public:
Inventory();
void addItem(Item *I);
std::string getInventory();
Item *backpack[BACKPACK_SIZE];
protected:
private:
};
#endif // INVENTORY_H
在Inventory.cpp
:
#include "Inventory.h"
Inventory::Inventory(){
for(int i = 0; i < BACKPACK_SIZE; i++){
backpack[i] = nullptr;
}
}
std::string Inventory::getInventory(){
std::string allItems = "";
int counter = 1;
for(int i = 0; i < BACKPACK_SIZE; i++){
if(backpack[i] == nullptr){
continue;
}
else{
allItems += (counter + ".) " + backpack[i]->getName() + "n");
counter += 1;
}
return allItems;
}
void Inventory::addItem(Item *I){ //THIS LINE IS WHERE THE ERROR APPEARS
for(int counter = 0; counter < BACKPACK_SIZE; counter++){
if(backpack[counter] == nullptr){
backpack[counter] == I;
break;
}
}
}
我已经做了我的研究,但我根本无法弄清楚我到底做错了什么。任何帮助都非常感谢!旁注:如果人们不花时间评论我可以更改编码的其他事情,而是坚持这个特定问题,我们将不胜感激。谢谢!
这个问题可能会作为一个错别字被关闭,但我想说明一个可能对你有帮助@john的评论。 (同时也回答你的问题(
std::string Inventory::getInventory()
{
std::string allItems = "";
int counter = 1;
for(int i = 0; i < BACKPACK_SIZE; i++)
{
if(backpack[i] == nullptr)
{
continue;
}
else
{
allItems += (counter + ".) " + backpack[i]->getName() + "n");
counter += 1;
}
return allItems;
}
您的代码已在此处重新格式化,以便左大括号和右大括号缩进到同一级别。
您可能会注意到,由于缺少大括号而出现错误的情况要明显得多。
相关文章:
- 如何通过派生类函数更改基类中的向量
- 库函数需要一个 std::function<void(void)>,如何传入类函数?
- 在类函数中初始化外部作用域变量
- c++ 在非类函数中使用类变量
- SDL_PollEvent() 无法捕获类函数内部SDL_QUIT?
- 从类成员函数到类 C 函数指针的转换
- 如何在模板类函数中分配结构值?
- 有没有办法将重载的类函数绑定到函数对象?
- 如何从构造函数副本 T(const T&)调用对象 T?
- 启动类函数作为失去引用的线程
- C++调用使用重写函数的父类函数
- 将值传递到另一个类函数在打印时为零
- 计算对类函数的所有调用次数
- 由于签名差异,调用了错误的子类函数
- 使用宏调用类函数
- 虚拟基类函数中派生类的大小
- 模板类/函数中的交叉前向声明
- 在C++中使用非静态类函数的函数
- 无法识别的类函数副本
- C++类:在成员函数中创建"this"类的副本