Published on

The C++ language considers six member functions as special.

class MyClass {
public:
    // 1. Default constructor
    MyClass() = default;

    // 2. Destructor
    ~MyClass() = default;

    // 3. Copy constructor
    MyClass(const MyClass& other) = default;

    // 4. Copy assignment operator
    MyClass& operator=(const MyClass& other) = default;

    // 5. Move constructor
    MyClass(MyClass&& other) = default;

    // 6. Move assignment operator
    MyClass& operator=(MyClass&& other) = default;
};

THE END