文章标题
2015-11-26 20:13
295 查看
/[b]*********************************************************[/b]
时间:2015年4月1日
首先学习//A(A other){value =other.value}的错误性。
原因是A的复制构造函数是不能带有A类的形参
由于other是传值参数,我们把形参复制到实参会调用复制构造函数。
因此如果允许复制构造函数传值,就会在复制构造函数内调用复制构造函数,
就会永无休止的递归调用从而导致栈溢出。
因此C++标准不允许复制构造函数传值参数
要解决这一问题就是把传值参数改成常量引用。
[b]**********************************************************[/b]/
时间:2015年4月1日
首先学习//A(A other){value =other.value}的错误性。
原因是A的复制构造函数是不能带有A类的形参
由于other是传值参数,我们把形参复制到实参会调用复制构造函数。
因此如果允许复制构造函数传值,就会在复制构造函数内调用复制构造函数,
就会永无休止的递归调用从而导致栈溢出。
因此C++标准不允许复制构造函数传值参数
要解决这一问题就是把传值参数改成常量引用。
[b]**********************************************************[/b]/
#include <iostream> **class A{ private: int value; public: A(int n){value = n;} A(const A& other){value =other.value;} void Print(){std::cout<<value<<std::endl;} } int main(){ A a=10; A b= a; b.Print(); }
相关文章推荐
- “南大软院大神养成计划“_第十一天的学习“
- C语言练习作业(五)
- python的编码类型转换
- RecycleView Adapter的封装
- C#_Delegate_泛型
- Cocos Studio 2.3.2开发中的Label控件锚点问题等
- JAVA动态绑定的内部实现机制
- python中的urlencode和urldecode
- 延迟加载之ViewStub
- ceph介绍
- 《将博客搬至CSDN》
- 阿里云服务器搭建自己的个人网站之拨开迷雾
- Nginx+Tomcat实现单IP、多域名、多站点的访问
- java多态,如何理解父类引用指向子类对象
- TCP长连接与短连接的区别
- linux下adb连不上android设备解决方法
- 剑指offer前奏二
- java学习参考
- nyoj--1011--So Easy[II](数学几何水题)
- Android中Parcelable接口用法