条款 05:了解 C++ 默默编写并调用哪些函数无标题文章

《Effective C++ 中文版 第三版》读书笔记

** 条款 05:了解 C++ 默默编写并调用哪些函数**

如果打算在一个包含“引用成员”的 class 内支持赋值操作符,就必须自己定义 “operator=” 操作符。面对包含 “const成员” 的 class,也需要这样子。

如果 base class 将 copy 赋值操作符声明为 private,编译器将拒绝为其 derived classes 生成一个 “operator=” 操作符。因为 derived classes 产生的 copy 赋值操作符想处理 base class 的 copy 赋值操作,但是这是不可行的。

** 请记住:**

编译器可以暗自为class创建默认构造函数、拷贝构造函数、拷贝赋值操作符,以及析构函数。

你可能感兴趣的:(条款 05:了解 C++ 默默编写并调用哪些函数无标题文章)