C++教程:C++拷贝构造函数

2020-01-06 12:16:55刘景俊
C++教程:C++拷贝构造函数 程序15.4.1中的拷贝构造函数仅仅是把成员数据拷贝了过来,却没有把动态申请的资源拷贝过来,我们把这种拷贝称为浅拷贝。相对地,如果拷贝构造函数不仅把成员数据拷贝过来,连动态申请的资源也拷贝过来,我们则称之为深拷贝。

下面我们来看如何实现深拷贝:(程序15.4.2)
//node.h同程序15.4.1
//linklist.h
#include "node.h"//需要使用链表结点类
#include <iostream>
using namespace std; 
class Linklist
{
   public:
   Linklist(int i,char c);//链表类构造函数
   Linklist(Linklist &l);//链表深拷贝构造函数
   bool Locate(int i);//根据整数查找结点
   bool Locate(char c);//根据字符查找结点
   bool Insert(int i=0,char c='0');//在当前结点之后插入结点