TreeMind树图在线AI思维导图
当前位置:树图思维导图模板资格考试计算机2020年全国计算机二级C++复习知识点:拷贝构造函数思维导图

2020年全国计算机二级C++复习知识点:拷贝构造函数思维导图

  收藏
  分享
免费下载
免费使用文件
轻涟低眉 浏览量:02023-04-10 17:08:59
已被使用0次
查看详情2020年全国计算机二级C++复习知识点:拷贝构造函数思维导图

备考2020年全国计算机二级考试的小伙伴们,复习的都怎么样了呢?树图网小编整理了2020年全国计算机二级C++复习知识点供大家参考复习,小伙伴们快来看看,测试一下自己吧!了解更多全国计算机二级考试敬请关注树图网计算机二级频道。

树图思维导图提供 2020年全国计算机二级C++复习知识点:拷贝构造函数 在线思维导图免费制作,点击“编辑”按钮,可对 2020年全国计算机二级C++复习知识点:拷贝构造函数  进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:eac66a79e7a6884fe69f3c661fc6bb0d

思维导图大纲

2020年全国计算机二级C++复习知识点:拷贝构造函数思维导图模板大纲

2020年全国计算机二级C++复习知识点:拷贝构造函数

拷贝构造函数在下列情况下被调用:用已经存在的对象去初始化同一个类的另一个对象;在函数的参数中,以传值方式传递类对象的拷贝;类对象的值被用做函数的返回值。拷贝构造函数和前面说到的转换构造函数有些相似。转换构造函数是把一个类的对象转化为另一个类的对象;拷贝构造函数是用一个已经存在的对象的值实例化该类的一个新对象。

不同对象间的初始化和赋值的区别:赋值操作是在两个已经存在的对象间进行的;而初始化是要创建一个新的对象,并且其初值来源于另一个已存在的对象。编译器会区别这两种情况,赋值的时候调用重载的赋值运算符,初始化的时候调用拷贝构造函数。

如果类中没有拷贝构造函数,则编译器会提供一个默认的。这个默认的拷贝构造函数只是简单地复制类中的每个成员。

#include iostream.h

#include string.h

class Date

int mo, da, yr;

char* month;

public:

Date(int m = 0, int d = 0, int y = 0);

Date(const Date &);

~Date();

void display() const;

Date::Date(int m, int d, int y)

static char* mos[] =

January, February, March, April, May, June,

July, August, September, October, November, December

mo = m; da = d; yr = y;

if (m != 0)

month = new char[strlen(mos[m-1])+1];

strcpy(month, mos[m-1]);

else

month = 0;

Date::Date(const Date & dt)

mo = dt.mo;

da = dt.da;

yr = dt.yr;

if (dt.month != 0)

month = new char [strlen(dt.month)+1];

strcpy(month, dt.month);

else

month = 0;

Date::~Date()

delete [] month;

void Date::display() const

if (month != 0)

cout << month <<' '<< da << , << yr << std::endl;

int main()

Date birthday(6,24,1940);

birthday.display();

Date newday = birthday;

newday.display();

Date lastday(birthday);

lastday.display();

return 0;

本例中,用到了两次拷贝构造函数。一个是使用普通的C++初始化变量的语句:

Date newday = birthday;

另一个是使用构造函数的调用约定,即把初始化值作为函数的参数:

Date lastday(birthday);

相关思维导图模板

七年级下册部编版语文补白知识思维导图

树图思维导图提供 七年级下册部编版语文补白知识 在线思维导图免费制作,点击“编辑”按钮,可对 七年级下册部编版语文补白知识  进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:f6a7176ea145c24bc33c18fd8b1fef5c

在几十年艰难而辉煌的战斗生涯中,毛泽东同志为中华民族、中国人民建立了不可磨灭的历史功勋,作出了光耀千秋的历史贡献。思维导图

树图思维导图提供 在几十年艰难而辉煌的战斗生涯中,毛泽东同志为中华民族、中国人民建立了不可磨灭的历史功勋,作出了光耀千秋的历史贡献。 在线思维导图免费制作,点击“编辑”按钮,可对 在几十年艰难而辉煌的战斗生涯中,毛泽东同志为中华民族、中国人民建立了不可磨灭的历史功勋,作出了光耀千秋的历史贡献。  进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:b64989f601b76f998d22ab17e26d6a6e