Joicy CC 2019-06-07 17:13 采纳率: 50%
浏览 288

请教大神们,这段代码哪里错了?

运行时在main函数给x1赋值时报错,说是没有与参数列表匹配的构造函数X::X实例

#include<iostream>
#include<string>
using namespace std;

class X {
private:
    char *s;
public:
    X(char *b) {
        s = new char[sizeof(b) + 1];
        strcpy(s, b);
    }
    ~X() { delete s; }
    void display() { cout << "s=" << s << endl; }
};
void main() {
    X x1("ok");
    X x2(x1);
    X x3 = x1;
    x2.display();
    x3.display();
    system("pause");
}
  • 写回答

2条回答 默认 最新

  • igssan 2019-06-07 17:22
    关注

    x2传的不是字符指针

    评论

报告相同问题?

悬赏问题

  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退