当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

中国水利水电出版社:《C++语言程序设计》课程电子教案(PPT教学课件)第6章 类与对象

资源类别:文库,文档格式:PPSX,文档页数:51,文件大小:296.02KB,团购合买
6.1 类与对象 6.2 构造函数与析构函数 6.3 类的组合 6.4 友元 6.5 静态成员 6.6 对象数组与对象指针 6.7 this指针
点击下载完整版文档(PPSX)

第6章类与对象 6.1类与对象 6.2构造函数与析构函数 6.3类的组合 64友元 6.5静态成员 66对象数组与对象指针 6.7this指针

第6章 类与对象 6.1 类与对象 6.2 构造函数与析构函数 6.3 类的组合 6.4 友元 6.5 静态成员 6.6 对象数组与对象指针 6.7 this指针

第6章类与对象 6.1类与对象 6.1.1类与对象的概念 对象( object):是现实世界中的客观事物 类( class):是把具有相同属性的事物划分为一类,从而得出 的抽象概念。 面向对象程序设计中的类,是具有相同属性和服务的一组对 象的集合,它为属于该类的全部对象提供了抽象的描述。 对象是类的实例,类是同种对象的抽象。 如:确定大小和颜色的矩形都是一个个具体的对象,而将所有矩形的共同特 点抽象出来,就是一个矩形 这些共有的属性包括颜色(coor),左上角坐标(left,top),长( length)和 宽(wdth)等; 对这些属性的处理包括改变矩形的颜色( Setcolor)和大小( Setsize),移 动矩形到新的位置(Move),绘出矩形(Draw)等。将矩形的这些属性和方法作

6.1 类与对象 6.1.1 类与对象的概念 对象(object):是现实世界中的客观事物。 类(class):是把具有相同属性的事物划分为一类,从而得出 的抽象概念。 面向对象程序设计中的类,是具有相同属性和服务的一组对 象的集合,它为属于该类的全部对象提供了抽象的描述。 对象是类的实例,类是同种对象的抽象。 第6章 类与对象 如:确定大小和颜色的矩形都是一个个具体的对象,而将所有矩形的共同特 点抽象出来,就是一个矩形类。 这些共有的属性包括颜色( color ),左上角坐标 ( left, top ),长 ( length )和 宽 ( width ) 等; 对这些属性的处理包括改变矩形的颜色( SetColor ) 和大小 ( SetSize ) ,移 动矩形到新的位置 ( Move ),绘出矩形 ( Draw ) 等。将矩形的这些属性和方法作 为一个整体,封装在一起形成一个矩形类

第6章类与对象 6.1类与对象 6.12类的声明 cass类名 private 私有数据成员和成员函数 protected 保护数据成员和成员函数 public 公有数据成员和成员函数;

6.1 类与对象 6.1.2 类的声明 class 类名 { private: 私有数据成员和成员函数; protected: 保护数据成员和成员函数; public: 公有数据成员和成员函数; }; 第6章 类与对象

第6章类与对象 例61定义一个长方形类 CRect,其数据成员包括颜色,左上 角坐标,长和宽,其函数成员包括改变矩形的颜色( Setcolor) 和大小( Setsize),移动矩形到新的位置(Move),绘出矩 形(DraW)。 class Crect private char color[10] int left 给lef赋初值: int left105,是否可 int top; 以???? int length int width public void Setcolor(char *c) void Setsize(int I, int W); void Move(int t, int D) void Draw

例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章 类与对象 给left赋初值:int left=10.5,是否可 以????

第6章类与对象 例6.1(续一) void crect: Setcolor(char *c) strcpy(color,c) void CRect: Setsize(int I, int w) length=l 域运算符(∷)用于指出该函数是 width w 哪一个类的成员函数,用法 类名:函数名(参数表 void CRect: Move(int t, int D) top=t left = I H yoid CRect. Drawo cut<<"矩形左上角坐标为(<le<"<top<"<end cout<"矩形长和宽分别为"< ength<"<Wdth<endl;‖ cout<<"矩形的颜色是"<< color<<endl;

例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章 类与对象 域运算符(::)用于指出该函数是 哪一个类的成员函数,用法: 类名::函数名(参数表)

第6章类与对象 例6.1(续二) void maino 定义cRec类的对象,定义对象的 格式 CRect r 类名对象名1,对象名2,… Setcolor("Red") r Move(10, 20) r Setsize(100, 200) 访问对象的公有成员,格式为 对象名公有成员函数名(参数表) r Draw 对象名公有数据成员名 r Move(50,50); r SetColor("Blue") 程序运行结果为 r Draw 矩形左上角坐标为(20,10) 矩形长和宽分别为100,200 矩形的颜色是Red 矩形左上角坐标为(50,50) 矩形长和宽分别为100,200 矩形的颜色是Bue

例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章 类与对象 定义CRect类的对象,定义对象的 格式: 类名 对象名1,对象名2,…… 访问对象的公有成员,格式为: 对象名.公有成员函数名(参数表) 对象名.公有数据成员名 程序运行结果为: 矩形左上角坐标为(20,10) 矩形长和宽分别为100,200 矩形的颜色是Red 矩形左上角坐标为(50,50) 矩形长和宽分别为100,200 矩形的颜色是Blue

第6章类与对象 6.1类与对象 6.1.3成员的访问控制 private:私有访问权限,只允许类中的成员函数访问,其他函 数不能访问。 protected:保护访问权限,在第7章中介绍。 public:公有访问权限,在任何函数中都可以访问。 例:若主函数中有以下语句,是否正确? CRect r strcpy( r color, red) 「top=10; 在主函数中不能访问类的私有成员, r left=20

6.1 类与对象 6.1.3 成员的访问控制 private: 私有访问权限,只允许类中的成员函数访问,其他函 数不能访问。 protected: 保护访问权限,在第7章中介绍。 public: 公有访问权限,在任何函数中都可以访问。 例:若主函数中有以下语句,是否正确? CRect r; strcpy( r.color , “red”); r.top = 10; r.left = 20; 第6章 类与对象 在主函数中不能访问类的私有成员

第6章类与对象 6.1类与对象 6.1.3成员的访问控制(续) 若不指定类中的成员的访问权限,则默认为私有成员 类也可以由 struct关键字声明, strust与cass的区别是:如果 不指定访问权限,前者缺省的访问权限是公有的,而后者是私有 的。用 struc声明前面的矩形类: struct CRect void SetColor(char*c) void Setsize(int I, int w) void Move (int t,intl void Draw private char color[10: t left int top t length int width

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章 类与对象

类的数据成员和成员函数总结: 类的成员函数可以直接访问自己类的私有成员 类外面的函数不能直接访问类的私有成员( 数据成员和成员函数) 类外面的函数只能通过类的对象使用该类公有 成员函数。 对象a和b的区别是属性的取值

类的数据成员和成员函数总结: • 类的成员函数可以直接访问自己类的私有成员。 • 类外面的函数不能直接访问类的 私有成员( 数据成员和成员函数) • 类外面的函数只能通过类的对象使用该类公有 成员函数。 • 对象a和b的区别是属性的取值

第6章类与对象 6.1类与对象 6.14类的成员函数 1.类成员函数的定义方式 在类外部定义:如前面定义的长方形类的成员函数 般格式为 函数类型类名:成员函数名(参数说明) 函数体 在类中定义:如 class crect public: void setcolor( char*c X strcpy( color, c);)

6.1 类与对象 6.1.4 类的成员函数 1. 类成员函数的定义方式 ➢在类外部定义:如前面定义的长方形类的成员函数 一般格式为: 函数类型 类名::成员函数名(参数说明) { 函数体 } ➢在类中定义:如 class CRect { …… public: void setcolor( char *c ){ strcpy( color , c ); } …… }; 第6章 类与对象

点击下载完整版文档(PPSX)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共51页,可试读17页,点击继续阅读 ↓↓
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有