C++使用来自不同文件中包含的类的函数的无效参数

标签 c++ class

我在文件 Order.h(持有类 Order)中有以下声明:

void removeFromAlbum(int barcode);

和以下实现行:

void Order::removeFromAlbum(int barcode)

但是,当我尝试使用不同的文件调用函数时,Store.cpp(包含 Order.h)包含以下行:

order.removeFromAlbum(barcode);

我从 eclipse 中得到以下错误:

Invalid arguments '
Candidates are:
void removeFromAlbum(int)
'

Eclipse 定义明确。 有什么建议吗?

编辑: 这是所有魔法发生时的功能:

void Store::removeFromOrder(int ordNum, int barcode)

条形码是一个整数。

最佳答案

编辑:在 OP 编辑​​之前,无法判断 barcode 是否为整数。因此,此答案可能无效:

看起来您正在尝试使用不是 int 的类型调用函数 removeFromAlbum()。确保 barcode 实际上被转换为 int

关于C++使用来自不同文件中包含的类的函数的无效参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17174279/

相关文章:

c++ - 二进制 '[' : no operator found which takes a right-hand operand of type 'initializer list' (or there is no acceptable conversion)

c++ - 循环类型定义

c++ - 我可以使用常量定义数组的长度,那么为什么 int d[b] 不起作用?

c# - 由于其保护级别而无法访问结构

python - 构造函数默认列表值

c++ - 正确包含基类和子类(派生类)的头文件?

c++ - SAX 在 C++ 中解析用户对象的片段?

c++ - 在 constexpr 变量模板中模拟 nan/inf

c++ - 运算符重载 - 在左侧乘以 int 矩阵

C++ 两个派生类中有彼此的对象(包括问题)