条款05
来源:互联网 发布:android精美界面源码 编辑:程序博客网 时间:2024/04/29 08:49
1、class Empty{ };
当c++处理过空类之后,编译器会为它声明一个拷贝构造函数,一个赋值运算符和一个析构函数,还有default构造函数。所有这些函数都是public且inline的。
唯有当这些函数被需要时,它们才会被编译器创建出来:
Empty e1; //default构造函数
//析构函数
Empty e2(e1); //拷贝构造函数
e2 = e1; //赋值操作符
编译器产生的析构函数是non-virtual的。
2、如果你打算在一个“内含引用成员变量”的class内支持赋值操作,你必须自己定义赋值操作符operator = ,编译器会拒绝编译那一行赋值动作,即不会自动生成复制操作符。面对“内含const成员”的class来说,编译器的反应一样。
如果某个基类将赋值操作符operator = 声明为private,编译器将拒绝为其派生类生成一个赋值操作符。毕竟编译器为派生类生成的操作符想想中可以处理基类成分。
1 0
- 条款05
- 条款 05
- effective C++ 条款05 to 条款12
- Effective C++ (笔记) : 条款05 -- 条款10
- 【Effection C++】读书笔记 条款05~条款06
- Effective C++:条款05
- 《Effective C++》条款05
- 条款
- 【Effective C++读书笔记】篇三(条款05~条款06)
- [C++] effective_C++_条款05
- 条款05:了解C++默默编写并调用哪些函数
- 条款05:了解C++默默编写并调用哪些函数
- 《Effective C++ 》学习笔记——条款05
- 条款05:了解C++默默编写并调用哪些函数
- 条款05 了解c++默默编写并调用哪些函数。。。
- 条款05:了解C++默默编写并调用哪些函数
- 条款05:了解C++默认编写调用哪些函数
- 条款05:了解C++默默编写并调用哪些函数
- Nginx的安装及配置
- QQ排序 队列操作
- HDFS基础操作一览
- 修改PE参考链接
- MD5骨骼动画模型加载
- 条款05
- android.view.WindowLeaked的解决办法
- 图
- C++构造函数与析构函数的调用顺序
- 混合型面向对象语言和纯面向对象语言
- CI1.3 给定两个字符串,确定一个字符串重新排列后,能否变成另一个字符串
- Android自定义动画
- Git学习——重要概念
- Java HashMap中在resize()时候的rehash,即再哈希法的理解