第8章第一部分 类与对象.pptVIP

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

例如: class Table { public: float length = 0.5; float width = 0.3; float height = 1.5; }table1,table2; 但是,C++中不允许这种初始化的方法。 虽然在定义类的时候初始化数据成员是不被允许的,但是,我们还有另一种方法,就是显式初始化。 例如: class Table { public: float length; float width; float height; }; void main() { Table table01 = {0.5, 0.3, 1.5}; } 这种显式初始化是允许的,但是,它有两个明显的缺点: (1) 它只能被应用在所有数据成员都是公有的类的对象上(即显式初始化表不支持使用数据封装); (2) 它要求程序员的显式干涉,增加了疏漏(忘了提供初始化表)和失误(弄错了初始值顺序)的可能性。 在C++中对象的初始化工作是由构造函数来完成的。构造函数是类的成员函数,因此可以访问类的所有成员,不管是公有的、私有的还是保护的;在对象建立的同时,自动调用构造函数,避免了程序员直接干涉造成的意外和错误。 8.3.2 构造函数 构造函数是与类同名的成员函数。它是在创建类对象时自动调用的。 【例8-4】下面的代码说明了构造函数的用法。 #includeiostream.h class Table { public: Table() // 定义构造函数 { length = 0.5; width = 0.3; height = 1.5; } void print() { coutThe length of the table is: lengthmendl; coutThe width of the table is: widthmendl; coutThe height of the table is: heightmendl; } private: float length; float width; float height; }; void main() { Table table1; // 声明类对象,同时自动调用Table()进行初始化 table1.print(); } 输出结果为: The length of the table is:0.5m The width of the table is: 0.3m The height of the table is:1.5m 构造函数也可以放在类的外部定义。 #includeiostream.h class coordinate { private: int X,Y; public: coordinate(int x,int y); int getx() { return X; } int gety() { return Y; } }; coordinate::coordinate(int x,int y) { coutInitlizing:x yendl; X=x;Y=y; } void main() { coordinate A(300,150); coutA.getx() A.gety(); } 程序的主函数main()中定义了coordinate类的对象A。编译系统在定义对象A时启动构造函数coordinate( ),输出指定信息并对对象A的成员数据X、Y进行初始化。该程序运行后输出结果为: Initializing: 300 150 300 150 例如:下面的代码构造一个账户类的对象: class Account { public: Account() { name = 0; } // 其他成员函数 private: char *name; unsigned acctNumber; double balance; }; void main() { Account acct1,a

文档评论(0)

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

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

1亿VIP精品文档

相关文档