VC++面向对象程序设计概述zyd10-9-9.ppt

  1. 1、本文档共128页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
成员函数的一般形式: 类型 类名 :: 函数名 (参数表) { 函数体 } 作用域区分符(域解析运算符) ::,指出该函数是属于类名指定类的成员函数,左结合性。 构造函数的功能是在定义对象时被编译系统自动调用来创建对象并初始化对象。 定义格式: 构造函数是公有成员函数,可写在类体内,也可写在类体外。 构造函数的函数名与类名相同,且不指定返回值类型,它有隐含的返回值,该值由编译系统内部使用。 构造函数可以没有参数,也可以有参数,因此可以重载,即可以定义参数不同的多个构造函数。 每个类都必须有一个构造函数。如果类中没有显式定义构造函数,则编译系统自动生成一个缺省形式的构造函数,作为该类的公有成员。 程序中不能直接调用构造函数,在定义对象时编译系统自动调用构造函数。 如果显式定义了构造函数,则默认构造函数将不存在。 构造函数可以没有参数,也可以有参数,因此可以重载,即可以定义参数不同的多个构造函数。 函数重载是指具有相似功能的不同函数使用同一函数名,但这些同名函数的参数类型、参数个数、返回值、函数功能可以不同。编译系统将根据函数参数的类型和个数来判断使用哪一个函数。体现了C++对多态性的支持。 析构函数的功能是在对象的生存期即将结束的时刻,由编译系统自动调用来完成一些清理工作。它的调用完成之后,对象也就消失了,相应的内存空间也被释放。 析构函数也是类的一个公有成员函数,它的名称是由类名前面加“~”构成,也不指定返回值类型。和构造函数不同的是,析构函数不能有参数,因此不能重载。 格式 析构函数的函数体可写在类体内,也可以写在类体外。 析构函数没有参数,因此不能重载。一个类中只能定义一个析构函数。 每个类都必须有一个析构函数。如果类中没有显式定义析构函数,则编译系统自动生成一个缺省形式的析构函数,作为该类的公有成员。 析构函数在对象生存期结束前由编译系统自动调用。 定义了类及其对象,就可以通过对象来使用其公有成员,从而达到对对象内部属性的访问和修改。 对象对其成员的访问有圆点访问形式和指针访问形式。 访问权限有三种类型: public(公有) 、 private(私有)和protected(保护)三种访问限定符表示。 public:是类与外部的接口,程序中的任何代码都可以访问公有类型数据和函数。 private :只允许本类中的函数访问,而类外部的任何函数都不能访问。如果紧跟在类名称的后面声明私有成员,则关键字private可以省略。 protected:与private类似,其差别表现在继承与派生时对派生类的影响不同 三种访问权限的成员与出现的先后顺序无关,并且允许多次出现,但是一个成员只能具有一种访问属性。 标准输入输出一般不再使用C语言的printf,scanf,而是使用两个标准I/O流。它们是: coutE1E2…Em; “”是预定义的插入运算符,E1、E2、…、Em为表达式。功能是计算各表达式的值,并将结果输出到屏幕当前光标位置处。 cinV1V2…Vn; “”是预定义的提取运算符,V1、V2、…、Vn都是变量,功能是暂停执行程序,等待从键盘输入数据,各数据间用空格或Tab键分隔,输入数据类型要与接受变量类型一致,输完后,按Enter回车键结束。 C++换行符可用endl,也支持C语言中的‘\n’换行符。 复制构造函数是一种特殊的构造函数,它的功能是用一个已知的对象来初始化一个被定义的同类的对象。 复制构造函数的定义格式为: 拷贝构造函数是成员函数,函数体可写在类体内,也可以写在类体外。 拷贝构造函数名与类名相同,并且也不指定返回值类型。 拷贝构造函数只有一个参数,并且是对同类对象的引用。 每个类都必须有一个拷贝构造函数。如果类中没有显式定义拷贝构造函数,则编译系统自动生成一个缺省形式的拷贝构造函数,作为该类的公有成员。 友元是C++提供的一种破坏数据封装和数据隐藏的机制。 通过将一个模块声明为另一个模块的友元,一个模块能够引用到另一个模块中本是被隐藏的信息。 可以使用友元函数和友元类。 为了确保数据的完整性,及数据封装与隐藏的原则,建议尽量不使用或少使用友元。 友元函数是在类声明中由关键字friend修饰说明的非成员函数,在它的函数体中能够通过对象名访问 private 和 protected成员 作用:增加灵活性,使程序员可以在封装和快速性方面做合理选择。 访问对象中的成员必须通过对象名。 格式: 若一个类为另一个类的友元,则此类的所有成员都能访问对方类的私有成员。 声明语法:将友元类名在另一个类中使用friend修饰说明。 this指针是一个特殊的隐含指针,它隐含于每一个类的成员函数中,即,每个成员函数都有一个this指针参数,指向调用该函数的对象。 当一个对象调用成员函数时,编译程

文档评论(0)

wxc6688 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档