C++拷贝构造函数

1.拷贝构造函数


  拷贝构造函数的名称必须和类名称一致,它的唯一的一个参数是本类型的一个引用变量。  

  拷贝构造函数必须以引用的方式传递参数。这是因为,在值传递的方式传递给一个函数的时候,会调用拷贝构造函数生成函数的实参,这样就会无限循环的调用下去,直到函数的栈溢出。

  如果在类中没有显式地声明一个拷贝构造函数,那么,编译器将会自动生成一个默认的拷贝构造函数,该构造函数完成对象之间的位拷贝,位拷贝又称浅拷贝。

2.深拷贝和浅拷贝


  如果一个类拥有资源,当这个类的对象发生复制过程的时候,资源重新分配,这个过程就是深拷贝,反之,没有重新分配资源,就是浅拷贝。

posted on 2019-03-08 16:44  能量星星  阅读(153)  评论(0编辑  收藏  举报

导航