- 1、本文档共71页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8讲 第6章面向对象的程序设计--类和对象--gaoxin
C++程序设计 面向对象程序设计语言—C++ 高欣 北京邮电大学自动化学院 gxin_mail98@ C++语言基础 本章是学习C++语言的基础,包括以下几个方面: 1.C++程序的基本组成和框架结构。 2.掌握C++语言中的基本数据类型、各种运算符、表达式。 C++数据输入流对象cin和输出流对象cout的使用。 3.程序的3种基本结构 4.函数的定义、调用及函数调用过程中的参数传递的机理和程序执行流程。 5.构造数据类型,如数组、结构体、指针等的定义方法、特点和使用方法。 6.引用的概念及其定义和使用方法。 7.面向对象的程序设计方法中的有关概念,如类、对象、封装、继承、消息和多态性等。 8.结构化程序设计方法与面向对象程序设计方法的各自特点、区别和相互联系。 3.1 类与对象的定义 类和对象是面向对象程序设计(OOP)的两个最基本概念。所谓对象就是客观事物在计算机中的抽象描述;类是对具有相似属性和行为的一组对象的统一描述。 3.1.1 类的定义 C++的类是在结构体的基础上扩充而来的。类是把各种不同类型的数据(称为数据成员)和对数据的操作(成员函数)组织在一起而形成的用户自定义的数据类型。 C++中,类定义包括类说明和类实现两大部分。说明部分提供了对该类所有数据成员和成员函数的描述,而实现部分提供了所有成员函数的实现代码。 面向对象的方法 观点:自然界是由实体(对象)所组成。 程序设计方法:使用面向对象的观点来描述模仿并处理现实问题。 要求:高度概括、分类和抽象。 对象 现实世界中的事物 人、动物、植物、工厂、汽车、计算机等真实事物 思想、程序、直线、文档、数据库等抽象事物 每一类事物有自己的属性和行为 人们通过研究事物的属性和行为而认知事物 在计算机科学中,将现实世界中的事物称之为对象 对象的定义 对象是对问题域中某个东西的抽象,这种抽象反映了系统保存有关这个东西的信息或与它交互的能力,即对象是对属性值和操作的封装。 对象=数据(属性)+作用于这些数据上的操作(方法) 类 类的定义 具有相同数据结构(属性)和相同操作功能(行为)的对象的集合。 对象是类的实例。 例如:Circle类, 数据:圆心坐标、半径、颜色 操作:显示自己,放大缩小半径,移动位置 类对象 类定义的一般形式为: class 类名 {private: 数据成员或成员函数 protected: 数据成员或成员函数 public: 数据成员或成员函数 };? 各成员函数的实现代码 说明: 1. class是定义类的关键字,类名由用户自己定名,必须是C++的有效标识符,但一般首字母大写。 2. 大括号的部分是类的成员(数据成员和函数成员),它们分成三部分,分别由private、public、proctected三个关键字后跟冒号来指定。这三部分可以任何顺序出现,且在一个类的定义中,这三部分并非必须同时出现。 (1)如果数据成员或成员函数在类的private部分,那么在类之外是不能存取的,只有类中的成员函数才能存取private的数据成员和成员函数。 (2)在一个类的public部分说明的数据成员或成员函数可被程序中的任何函数或语句存取,public成员多为成员函数,用来提供一个与外界的接口,外界只有通过这个接口才可以实现对private成员的存取。 (3)在类的protected部分说明的数据成员和成员函数是不能在类之外存取的,只有类的成员函数及其子类(派生类)可以存取protected的成员。 (4)当定义类时,当未指明成员是哪部分时,默认是属于private成员,但一般不要采用默认形式。 如:下例中定义描述图书的类定义 class Record { private: //private成员 char bookname[20]; //数据成员bookname, // 用于表示图书的名称 int number; //数据成员number,表示图书编号 public: //public成员 void regist(char *a,int b); //成员函数regist,用于给 //各数据成员赋值 void show(); //成员函数show,显示各数据成员的值 }; 要特别注意,在类的定义中,类的说明部分的右边
文档评论(0)