文档详情

C++程序设计教程 杨国兴及例题 第6章 类与对象新.ppt

发布:2017-12-30约1.95万字共56页下载文档
文本预览下载声明
第6章 类与对象 6.1 类与对象 6.2 构造函数与析构函数 6.3 类的组合 6.4 友元 6.5 静态成员 6.6 对象数组与对象指针 6.7 this指针 6.1 类与对象 6.1.1 类与对象的概念 对象(object):是现实世界中的客观事物。 类(class):是把具有相同属性的事物划分为一类,从而得出的抽象概念。 面向对象程序设计中的类,是具有相同属性和服务的一组对象的集合,它为属于该类的全部对象提供了抽象的描述。 对象是类的实例,类是同种对象的抽象。 6.1 类与对象 6.1.2 类的声明 class 类名 { private: 私有数据成员和成员函数; protected: 保护数据成员和成员函数; public: 公有数据成员和成员函数; }; 例6.1 定义一个长方形类CRect,其数据成员包括颜色,左上角坐标,长和宽,其函数成员包括改变矩形的颜色(SetColor)和大小(SetSize),移动矩形到新的位置(Move),绘出矩形(Draw)。 class CRect { private: char color[10]; int left; int top; int length; int width; public: void SetColor(char *c); void SetSize(int l, int w); void Move(int t,int l); void Draw(); }; 例6.1 (续一) void CRect::SetColor(char *c) { strcpy(color, c); } void CRect::SetSize(int l, int w) { length=l; width = w; } void CRect::Move(int t,int l) { top = t; left = l; } void CRect::Draw() { cout 矩形左上角坐标为( left , top ) endl; cout 矩形长和宽分别为 length , width endl; cout 矩形的颜色是 color endl; } 例6.1 (续二) void main() { CRect r; r.SetColor(Red); r.Move(10,20); r.SetSize(100,200); r.Draw(); r.Move(50,50); r.SetColor(Blue); r.Draw(); } 6.1 类与对象 6.1.3 成员的访问控制 private: 私有访问权限,只允许类中的成员函数访问,其他函数不能访问。 protected: 保护访问权限,在第7章中介绍。 public: 公有访问权限,在任何函数中都可以访问。 例:若主函数中有以下语句,是否正确? CRect r; strcpy( r.color , “red”); r.top = 10; r.left = 20; 6.1 类与对象 6.1.3 成员的访问控制(续) 若不指定类中的成员的访问权限,则默认为私有成员。 类也可以由struct关键字声明,strust与class的区别是:如果不指定访问权限,前者缺省的访问权限是公有的,而后者是私有的。用struct声明前面的矩形类: struct CRect { void SetColor(char *c); void SetSize(int l, int w); void Move(int t,int l); void Draw(); private: char color[10]; int left; int top; int length; int width; }; 6.1 类与对象 6.1.4 类的成员函数 1. 类成员函数的定义方式 在类外部定义:如前面定义的长方
显示全部
相似文档