13.1.1 拷贝构造函数
来源:互联网 发布:淘宝双十一买什么划算 编辑:程序博客网 时间:2024/06/07 16:29
Q:什么是拷贝构造函数?
一个构造函数的第一个参数是其自身类类型的引用,其任何参数都有默认值
class A{public: A(); //默认构造函数 A(const A&); //拷贝构造函数};
Q:为什么第一个参数前要加const ,为什么必须是引用
1.因为接受的参数几乎总是一个const的引用,且拷贝构造函数在某种情况下会被隐式使用(explicit),所以加const
2.如果不是引用,当调用拷贝构造函数,其参数要进行拷贝,为什么拷贝参数,又要调用参数的拷贝构造函数,无限循环
Q:在什么情况下会发生拷贝,即调用拷贝构造函数
1.将一个对象作为实参传递给一个非引用的形参
2.函数的返回类型非引用,返回一个对象
3.在用花括号进行初始化对象时执行的是拷贝操作
4.push insert等操作是拷贝操作
string dots(10,'.'); //直接初始化
string s(dots); //直接初始化
string s2=dots; //拷贝初始化5.一般用 = 的都是拷贝初始化
阅读全文
0 0
- 13.1.1 拷贝构造函数
- 拷贝构造函数1
- 构造函数、拷贝构造函数
- 拷贝构造函数,构造函数
- 拷贝构造函数--默认拷贝构造函数
- 构造、拷贝构造函数基础
- C++之拷贝构造函数1
- 拷贝构造函数 深拷贝 浅拷贝
- 拷贝构造函数(深拷贝,浅拷贝)
- 拷贝构造函数浅拷贝深拷贝
- 拷贝构造函数,浅拷贝,深拷贝
- 拷贝构造函数 深拷贝 浅拷贝
- 拷贝构造函数----深拷贝、浅拷贝
- 拷贝构造函数
- 拷贝构造函数
- 浅析拷贝构造函数
- 拷贝构造函数
- 拷贝构造函数
- Sort it(逆序数)
- 归并排序模版(分治思想)
- Hive家族学习路线图
- react vr 消息传递原理解析
- java.lang.NoClassDefFoundError错误产生的原因及解决方案
- 13.1.1 拷贝构造函数
- centos7 配置flask环境
- 24.Scala中SAM转换实战详解
- laravel自定义函数
- HDU1194Beat the Spread
- 3-2ipv6、链路聚合和桥接、图形化切换
- 8.11 平台
- Python中匿名函数lambda的各种用法
- Maven install 报错: Failed to execute goalorg.apache.maven.plugins:maven-gpg-plugin:1.4:sign (sign-art