3C++面向对象程序设计.pptxVIP

  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文档。上传文档
查看更多
Visual C++面向对象编程语言;第三章 C++面向对象程序设计;3.2 C++类;3.3 类的继承;3.4 多态性和虚函数;3.6 C++模板;结构化程序设计:将系统分解为若干模块(即函数); 缺点:维护困难,特别是数据结构的修改;;面向对象程序设计把一个复杂的问题分解为多个能完成独立功能的对象,分开独立设计,再将其整合完成复杂问题; 其理想目标是希望编写程序就像搭积木;;面向过程和面向对象的区别;;;;;;在类的定义中,数据称为成员变量,函数称为方法; 成员变量按访问控制权限分为公有和私有; 定义的格式: class 类名 { private:私有数据成员和成员函数的声明 public:私有数据成员和成员函数的声明 protected:保护数据成员和成员函数的声明 };private属性的成员只允许被本类的成员函数访问和调用; protected属性的成员允许被本类的成员函数和派生类的成员函数访问和调用;;例:Time类的定义 class Time { private: int hour; int minute; int second; public: void setTime( int, int, int ); void showTime(); };类的定义和一般函数定义类似,但必须在成员函数名前加类名和作用域限定符(::) Time类的实现(定义) void Time::setTime(int h,int m,int s) { hour=(h=0h24)?h:0; minute=(m=0m60)?m:0; second=(s=0s60)?s:0; } void Time::showTime() { couthour‘:’minute‘:’secondendl; };对象的声明:就像变量的声明(用模具生产一个产品); 格式:类名 对象名; 例:Time t1,today; Time *pt1=t1; 比较 int i; 成员函数的调用: t1.setTime(1,2,3); today.showTime(); pt1-setTime(1,2,3); 思考:t1.hour=10;;;思考:如果对于Time类,在未调用setTime前调用showTime会怎样?;构造函数的名称与类名相同,而析构函数必须在类名前加“~”,都没有返回值; 构造函数可以有参数,析构函数没有参数; 系统有默认的构造函数和析构函数; 可以有多个构造函数(参数类型不同),???得创建的对象根据数据类型的不同(整型和实型)进行不同的处理,这就是函数重载;;public: Time(int,int,int); ~Time() …… }; Time::Time(int h,int m,int s) { hour=h; minute=m; second=s; } Time::~Time() {……;例 Void main(void) { Time t1(10,20,30); //调用构造函数 …… …… } //调用析构函数;理解面向对象设计的思想;计算一个矩形的面积和周长;;;;;;在C方案中扩展困难,原因就在于没有一个合适的位置来存储辅助的状态信息,因为在原来的情况下根本不需要状态信息; 对象提供了一个理想的位置来放置状态信息,并且作为对象的一部分是显示可用的,而不是隐藏在幕后的东西;;继续思考面向对象的特点;;函数一() { ……; } 函数二() { ……; } …… 主函数() { ……; } ;;class 类名 { 函数一() { ……; } 函数二() { ……; } …… } ;;;;;;;;;指向对象本身的指针,作为隐含参数传给每个成员函数; 例: void Time::showTime() { couthour’:’minute‘:’secondendl; }等同于 void Time::showTime(Time *this); { coutthis-hour‘:”this-minute…… };Time::showTime { Display(this); };需要让多个对象共享相同值的成员时使用; 成员变量定义: static int m_ncount; 使用和一般成员变量一样,也有公有、私有之分; 初始化必须在类定义的外部: int Person::m_nCount=0;;成员函数也可以是静态的; 定义 static int GetCount(); 没有this指针; 可以通过类调用:Person::GetCount(); 也可以通过对象调用:

文档评论(0)

职教魏老师 + 关注
官方认证
服务提供商

专注于研究生产单招、专升本试卷,可定制

版权声明书
用户编号:8005017062000015
认证主体 莲池区远卓互联网技术工作室
IP属地河北
统一社会信用代码/组织机构代码
92130606MA0G1JGM00

1亿VIP精品文档

相关文档