c++“没有要调用的匹配函数

标签 c++ arrays pointers parameter-passing

当尝试将数组作为参数传递时,我得到:

"No matching function to call to ' table::retrieve(const char[16], item&, int)'

我正在尝试调用该函数

program.reference.retrieve("Abecean Longfin", program.client_item, 1);

函数是

int table::retrieve(char item_in[],item*item_list, int name_flag)

我敢肯定这很简单,我不明白,但我是新手。

最佳答案

您的调用失败的真正原因是您传递了一个item&,而您的函数接受了一个item*。您的代码违反了字符串的 const 正确性,但在 C++03 中,它们有一个特殊的规则使它合法。

关于c++“没有要调用的匹配函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10679526/

相关文章:

c++ - LDAP长消息长度表示

Android:如何使字符串数组成为对另一个字符串数组的引用?

jquery - 将字符串数组从 MVC 返回到 jQuery ASP.NET

C++ 快速排序字符串指针数组

c++ - 我在哪里可以为私有(private)函数定义主体?

c++ - cout 上没有控制台输出

Ruby:从哈希 A 到哈希 B 的最快路径

c - 传递给函数的 const 指针是否复制地址并在函数范围内创建新指针?

c++ - 返回指向层序二叉树中第 n 个节点的指针

c++ - 在 VLC/FFMPEG 或其他应用程序中接收 WebRTC