《面向对象C》PPT课件

《面向对象C》PPT课件

ID:45744586

大小:385.34 KB

页数:47页

时间:2019-11-17

《面向对象C》PPT课件_第1页
《面向对象C》PPT课件_第2页
《面向对象C》PPT课件_第3页
《面向对象C》PPT课件_第4页
《面向对象C》PPT课件_第5页
资源描述:

《《面向对象C》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第2章从结构到类的演变2.1结构的演化2.2从结构演变一个简单的类2.3C++面向对象程序设计特点2.4数据对象和数据类型2.5熟悉并使用类和对象2.6string对象数组与范型算法2.7结构化程序设计典型例题2.8活捉臭虫保平安2.1结构的演化结构由若干元素构成,C语言中称这些结构元素为结构成员,C++中称为数据成员。能够做数据成员的不只是基本数据类型的变量,还可以是构造类型(数组、指针甚至是其他类型的结构)变量。C++的结构中可以有函数。其实,类确实是从结构演变而来,开始称为“带类的C”。这场革命就是从让结构含有函数开始的。2.1.1结构发

2、生质的演变1.函数与数据共存C++允许结构中可以定义函数,这些函数称为成员函数。如果将原来的结构成员称为数据成员的话,可以使用如下的形式描述:struct结构名{数据成员成员函数};可以像结构变量或指针使用结构成员那样,使用成员函数:结构变量.成员函数指向结构变量指针的名字->成员函数假设为结构Point设计一个Setxy函数如下:voidSetxy(doublea,doubleb){x=a;y=b;}如果把域x和y称为结构的数据成员,则可以使用参数表中的a和b赋给结构变量的数据成员。假设有对象(结构变量)a,则语句:a.Setxy(12.5

3、,14.5);使结构变量a的a.x=125,a.y=14.5。【例2.1】结构中使用成员函数的实例。#includeusingnamespacestd;structPoint{doublex,y;//数据成员voidSetxy(doublea,doubleb)//成员函数,用来//重新设置数据成员{x=a;y=b;}voidDisplay()//成员函数,按指定格式输出//数据成员的值{cout<

4、y(10.6,18.5);//设置变量a的数据成员a.Display();//显示变量a的数据成员p=&a;//使用变量a初始化指针变量p->Display();//使用指向变量a的指针调用成员函数cout<x<<"t"<y<

5、义,则产生封装性。【例2.2】使结构具有封装性的实例。#includeusingnamespacestd;structPoint{private:doublex,y;//数据成员public:voidSetxy(doublea,doubleb)//成员函数//用来重新设置数据成员{x=a;y=b;}voidDisplay()//成员函数,按指定格式//输出数据成员的值{cout<

6、例2.1】的主程序,则其最后一条语句就出现编译错误。也就是说,私有的数据成员,必须通过成员函数才能使用,这就称为数据的封装性。2.1.2使用构造函数初始化结构的对象因为【例2.2】的程序使结构具有封装性,所以不能使用初始化列表初始化结构对象。为此,这里为结构Point设计两个专门用于初始化的函数。这两个函数具有相同的名字Point,其原型如下:Point();Point(double,double);这是函数重载。因为这里的函数名与结构同名,称为构造函数。构造函数专门用于初始化对象。【例2.3】使用构造函数初始化对象的实例。#include

7、ostream>usingnamespacestd;structPoint{private:doublex,y;//数据成员public:Point(){};//无参数构造函数Point(doublea,doubleb)//具有两个参数的构造函数{x=a;y=b;}voidSetxy(doublea,doubleb)//成员函数,用来重新设置数据成员{x=a;y=b;}voidDisplay()//成员函数,按指定格式输出数据成员的值{cout<

8、tb(18.5,10.6);//定义对象b并赋初值a.Setxy(10.6,18.5);//设置变量a的数据成员a.Display();//显示变量a

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。