- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
类与对象及封装性
Queue::Queue(int size) { Sloc = Rloc = 0; Maxsize=size; if(!(QueueMem=new int[Maxsize])) exit(0); coutQueue initialzed\n; } Queue::~Queue() { if(!QueueMem) delete[] QueueMem; coutQueue destroyed\n; } int main() { Queue Q1(100),Q2(200); …. } 结果为??? * * * * 当猪类统治了世界 类与对象及封装性 1.类的抽象 2.类的定义与对象生成 3.构造函数和析构函数 1.类的抽象 在现实世界中,任何一个实体都可以看成是一个对象。 一个对象具有如下二个方面的要素: 对象的属性:是实体自身所具有的性质。 如一个具体的人,他有身高、体重等特征。 对象的方法:是实体自身所拥有的操作。 如一个具体的人,他可以走、说话等动作。 类:按照上述二个方面去进行归纳与抽象定义后所产生的类型 类是具体对象的一个抽象的定义 张三、李四、王五是一个个具体的人 “人”就是类的概念 张三、李四、王五就是“人”类的对象 对象是按照类的抽象定义的框架产生的,也就是说,类是这一类的对象的生成模型。 面向对象的程序设计: 通过对象的使用去完成应用程序的 2.类的定义与对象生成 成员数据:类的属性数据; 成员函数:对类的属性数据进行操作的方法 定义一个类时,首先,要定义它的属性数据,其次,要定义对这些属性数据进行操作的方法。 类定义的一般格式如下: Class 类名 { public: 公有成员函数和数据成员的声明 private: 私有成员函数或者数据成员的声明 protected: 保护成员函数或者数据成员的声明 }; 各个成员函数的实现代码 2.类的定义与对象生成 class Queue { int QueueMem[100]; //用来存放整型数据 int Rloc, Sloc; //分别用来指示队列的头与尾 public: void Init(); //用来初始化队列 void Put(int i); //入队 int Get(); //出队 }; 其中变量QueueMem,Sloc,Rloc是私有变量,之所以称为私有,意味着它们只能由Queue类的成员函数来访问,而不能由程序的其他任何部分来访问。 private, public, protected 访问标号的访问范围。 private:只能由1.该类中的函数、2.其友元函数访问。不能被任何其他访问,该类的对象也不能访问。 protected:可以被1.该类中的函数、2.子类的函数、3.其友元函数访问。但不能被该类的对象访问。 public:可以被1.该类中的函数、2.子类的函数、3.其友元函数访问,4.该类的对象访问。 2.类的定义与对象生成 实现一个类的成员函数,必须通过用类名限定函数名来告知编译器这个函数属于哪个类。例如: void Queue::Put(int i) { if(Sloc==100) { cout”Queue is full”; return; } Sloc++; QueueMem[Sloc]=i; } “::”是作用域运算符。它告知编译器函数Put()属于Queue类的,也即它是Queue类的一个成员函数。下面是Queue类的完整定义。 class Queue { int QueueMem100]; int Rloc,Sloc; public: void Init(); void Put(int i); int Get(); }; //类Queue的初始化 void Queue::Init() { Rloc = Sloc = 0; } //把一个整数放入Queue中 void Queue::Put(int i) { if(Sloc==100) { cou
文档评论(0)