小编Liz*_*zho的帖子

为什么删除move构造函数会导致编译错误?

以下代码可以正常工作:

#include <iostream>
using namespace std;
struct oops
{
        ~oops()
        {
                cout << " oops! " << endl;
        }
};

struct sample
{
        oops* x = nullptr;
        sample(oops* p) : x(p)
        {
                cout << "sample: " << p << endl;
        }
        ~sample()
        {
                delete x;
                cout << "destroy sample " << endl;
        }
        sample(const sample&)
        {
                cout << "copy sample " << endl;
        }
        sample(sample&&)
        {
                cout << "move sample " << endl;
        }
};

int main()
{
        sample s …
Run Code Online (Sandbox Code Playgroud)

c++ gcc

15
推荐指数
2
解决办法
1196
查看次数

标签 统计

c++ ×1

gcc ×1