★19.关于移动操作

2017-06-30  本文已影响0人  iDragonfly

定义

class A {
public:
    A(A &&) = default;                // 显式定义移动构造操作
    A & operator=(A &&) = default;    // 显式定义移动赋值函数
    virtual ~A() = default;           // 一旦一个类定义了析构函数,此类及其派生类都不会合成移动操作
    std::string i;
};

class B : public A {
public:
    B(B &&) = default;                // 显式定义移动赋值函数
    B & operator=(B &&) = default;    // 显式定义移动赋值函数
};

注意事项

上一篇下一篇

猜你喜欢

热点阅读