第2章_从结构到类的的演变.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章_从结构到类的的演变

第二章 从结构到类的演变 本章主要内容 结构的演化 面向过程与面向对象 C++语言面向对象程序设计的特点 使用类与对象 string对象数组 2.1结构的演化 结构体:就是一个可以包含不同数据类型的一个结构,它是一种可以自己定义的数据类型。 它的特点和数组主要有两点不同,首先结构体可以在一个结构中声明不同的数据类型,第二,相同结构的结构体变量是可以相互赋值的,而数组是做不到的,因为数组是单一数据类型的数据集合,它本身不是数据类型(而结构体是数据类型) 结构的演化 结构体的格式: struct 结构名{ 数据成员 成员函数 }; 参考P31【例2.1】 结构的演化 封装:若结构体中的数据成员被定义为private,则称为数据的封装。 私有的数据成员,只能通过公有的成员函数才能使用 结构的演化 struct Point{ private: double x,y; public: void Setxy(double a,double b){ x=a; y=b; } void Display(){ coutx“\t”yendl; } }; 思考:如何给x,y赋值? 结构的演化 构造函数:函数名与结构名相同的函数 struct Point{ …… Point(int a,int b){……} }; 定义结构体对象的时候调用。 Point a(10,20); 结构的演化 分为:无参构造函数,有参构造函数 允许多个构造函数同时存在,即为构造函数的重载 参考教材P32【例2.3】 2.2从结构演变为类 对象:就是一类物体的实例 类:具有相同属性和行为的一组对象的集合,为属于该类的全部对象提供了统一的抽象描述。 类与对象的关系:如同一个模具与用该模具铸造出来的器件。 如:车是一个类(轮胎、椅子,刹车等),汽车车、卡车都是车的一个对象 2.2从结构演变为类 使用关键字class 代替struct,就是一个标准的类。 class Point{ …… }; 参考教材P33【例2.4】 2.3面向过程与面向对象 “面向过程”是一种以事件为中心的编程思想。 就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了 “面向过程”就是汽车启动是一个事件,汽车到站是另一个事件。在编程序的时候我们关心的是某一个事件。而不是汽车本身。我们分别对启动和到站编写程序。 2.3面向过程与面向对象 “面向对象” 是一种以事物为中心的编程思想。 “面向对象”需要建立一个汽车的实体,由实体引发事件。 我们关心的是由汽车抽象成的对象,这个对象有自己的属性,象轮胎,颜色等;有自己的方法,象启动,行驶等.方法也就是汽车的行为.而不是汽车的每个事件 2.4C++语言面向对象的特点 面向对象具有抽象、封装、继承、多态等特点 C++语言面向对象的特点 抽象:从表面看事物,集中于事物的本质特征,而不是具体细节或具体实现。 在C++中,将一组对象的共同特征(属性和操作)抽象出来,从而形成“类”。 如:把人抽象成一个类(身高、体重、吃饭等),张三是人这个类的一个对象。 C++语言面向对象的特点 封装:把对象的属性和行为结合为一个独立的单位,并尽可能的隐蔽对象的内部细节,对象的属性值(除了公有的属性值外)只能由这个对象的行为来读取和修改。 如:开车不需要了解各个零件的运行细节,只需要根据汽车提供的行为(刹车等)来操作即可 C++语言面向对象的特点 继承:指一个类可以获得另外一个类的特征 具有层次模型,低层类只需定义特定与它的特征,共享高层类的所有特征 如:大学生继承于学生,学生继承于人 C++语言面向对象的特点 C++语言面向对象的特点 多态:同一函数名对应多个具有相同功能的不同函数,可以使用相同的方式来调用这些具有不同功能的同名函数,从而产生完全不同的行为现象。 体现方式:方法的重载、方法的重写 2.5使用类与对象 string类的使用 string类用于定义存储字符串的对象,需要包含该类的头文件 #includestring 使用双引号把字符串的值括起来,格式如下: string 对象名=“初始值”; string str1=“test”; string 对象名(“初始值”); string str2(“test”); 2.5使用类与对象 string类成员方法的使用 1.获取字符串的长度 对象名.size(); string

文档评论(0)

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

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

1亿VIP精品文档

相关文档