C++中的The Rule of Three

隐式拷贝

内存泄漏 内存溢出 悬挂指针 非法内存释放

没有堆内存资源分配时一般无需显示声明:

·拷贝构造函数A(const A& a);

·拷贝赋值函数A& operator=(const A& a){return *this;}

C++11之前The Rule of Three: 如果你需要显示的声明一个析构函数,那么你可能也需要同时显示的声明他的拷贝构造函数以及拷贝赋值函数。

C++11之后The Rule of Five:

移动构造函数和移动赋值函数

你可能感兴趣的:(C++中的The Rule of Three)