9 拷贝构造函数组合类.pptVIP

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
9 拷贝构造函数组合类

以clock类为例 Main() { clock c1(8,30,30); 生成c1副本?即生成一个与c1一样的对象。可称为c2. } 整型副本: int a=1; int b=a; 其他方法? 二是使类具有自行复制本类对象的能力,这也正是拷贝构造函数的功能。 将出生日期定义为日期类对象 1) 增加class birthday 2) people类中增加birthday类对象来表示出生日期。 3)如何修改构造函数? 4)main函数如何修改? 上机: 设计一个Person类,该类有数据成员name(姓名),ID(身份证号)等,成员函数实现对相关信息的录入和显示,要包含构造函数和析构函数; 设计一个BankAccount(银行帐户)类,该类有数据成员personInfo(帐户所有人信息),balance(帐户余额),interest_rate(帐户的利率)。其中personInfo为Person类类型。成员函数实现对帐户相关数据的初始化,并将帐户信息显示出来。 要求: BankAccount类中的成员函数应包含相应构造函数,默认构造函数,拷贝构造函数,析构函数,及get_balance( ) 和 get_rate( )。其中get_balance( )和get_rate( )分别返回帐户余额和帐户利率,且帐户利率以百分比形式返回。 设计测试程序分别使用构造函数,拷贝构造函数和默认构造函数三种方式创建三个BankAccount类对象,将对象的数据成员输出,并观察构造函数和析构函数的执行过程。 date::date(int d,int m,int y) { day=d; month=m; year=y; coutdates constructor calledendl; } * void date::setdate() //设置年月日的函数 { int d,m,y; cout请输入出生日期:年-月-日:“ endl; cinymd; year=y; day=d; month=m; } * void date::outputdate() { cout“日期年-月-日:”year”-”month“-”dayendl; } * 修改人员类: class person { int num,id,day,month,year; char sex; public: person(int n,int i,int d,int m,int y,char s); person(){} void input(); void output(); } * class person { int num,id; date birthday; char sex; public: person(int n,int i,int d,int m,int y,char s); person(){} void input(); void output(); } * 组合类构造函数 person(int n,int i,int d,int m,int y,char s):birthday(d,m,y) { num=n; sex=s; id=i; coutpersons constructor calledendl; } * void person::input() { int n,i; char s; cout请输入编号:endl; cinn; num=n; cout请输入性别endl; cins; sex=s; birthday.setdate(); cout请输入身份证号:endl; cini; id=i; } * void person::output() { coutsetw(10)“编号:” setw(10)numendl; coutsetw(10)性别:” setw(10)sexendl; coutsetw(10)“出生日期:”; birthday.outputdate(); coutsetw(10)身份证号:” setw(10)idendl; } * void main() { /* 对象数组p初始化,并输出 */ person p[2]={person(01,m,2 ,2,2008,230001), person(02,m,2 ,2,2008,230002)}; for(int j=0;j2;j++) p[j].output(); } * /*对象数组q不初始化,信息直接由键盘录入并输出*/ void main() { person q[2]; cout

文档评论(0)

ligennv1314 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档