zuilm 2022-12-20 12:49 采纳率: 100%
浏览 22
已结题

c++中出现没有与参数列表匹配的函数


class market//商城
{
private:
    int num;//商品编号
    int stock;//商品库存
    char* name;//商品名
public:
    market(char* name, int num, int stock)
    {
        this->num = num;
        this->stock = stock;
        strcpy(this->name, name);
    }
};

int main()
{
    string name = "手机\n";
    market phone(name, 1, 5);
}

在主函数给对象赋值时,name出现没有与参数列表匹配的构造函数"market::market"实例的问题
在更改market类中商品名数据类型和构造函数为string后任然存在该问题

  • 写回答

3条回答 默认 最新

  • 快乐鹦鹉 2022-12-20 13:04
    关注

    参数类型是char *,传递的是string,不能直接赋值,改为
    market phone((char * )name.c_str(),1,5);

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 1月2日
  • 已采纳回答 12月25日
  • 修改了问题 12月20日
  • 创建了问题 12月20日

悬赏问题

  • ¥15 win10权限管理,限制普通用户使用删除功能
  • ¥15 minnio内存占用过大,内存没被回收(Windows环境)
  • ¥65 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 求螺旋焊缝的图像处理
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面