带有复制构造函数的析构函数

Destructor with copy constructor

提问人: 提问时间:12/11/2020 更新时间:12/11/2020 访问量:86

问:

我想在 CPP 中使用析构函数,但是,编译器给出警告“未定义的引用”。

class trial{
private:
    int number;
public:
    trial(){};
    trial(int num) {
        number=num;
    };
    ~trial();
};

试用类构造函数从 main 函数中获取值。通过告诉我构造函数中的错误来帮助我。提前致谢:)

C++ 析构函数 复制构造函数

评论

0赞 perivesta 12/11/2020
析构函数未实现。复制 ctor 很好。
0赞 Yksisarvinen 12/11/2020
找出 和 之间的一个差(除了 )~trial(){};~trial();
0赞 MikeCAT 12/11/2020
在构造函数的末尾有额外的 s。;

答:

1赞 MikeCAT 12/11/2020 #1

似乎你宣布了 destuctor ,但你没有定义它。~trial();

若要在类声明中定义析构函数,请使用 而不是 like 。{};~trial(){}

要在类声明之外(在源文件中)定义析构函数,请像这样编写:

trial::~trial() {
    // do what you want
}

评论

2赞 463035818_is_not_an_ai 12/11/2020
或者干脆不声明