预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共119页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第7章类与对象 7.1C++的OOP程序结构框架 --参看书一个大的C++之OOP程序主体的一般格式为:file_n.cpp(源程序文件n)使用要点:7.2类(class)类型--参看书小节2.按如下方式来说明对象(类类型的变量、类的实例):3.按如下方式来使用对象成员(数据成员、函数成员):4.类成员以及对它们的访问自定义类(类型)程序示例 7.3类的构造函数与析构函数--参看书小节7.3.2构造与析构函数示例 分析如下程序的执行结果2.构造函数与析构函数示例2 7.4简单类应用程序 2.反序输出问题 3.设计一个栈类--参看书节3)使用示例 //迷宫矩阵maze及其初始值(全局性的二维数组,注:书中通过cin输入) //通过对象及相关方法与手段对所定义类进行使用 friendpointoperator-(pointpt); cout<<"enter'String::String',str=>"<<str<<endl; Inputrandh:1. 程序执行后的显示结果如下: friendbooloperator==(Set,Set); 此函数什么事情也不做。 temp=mazepath. friendpointoperator-(pointpt1,pointpt2); 构造函数与析构函数示例1 voidoutCom(); //类成员函数 ErrCodeUnion(Set*,Set*); //conMbr++; //ERR!不能更改常量数据成员conMbr的值 cout<<"SETs3=s4"<<endl; 程序执行后的显示结果如下: cnstClaob1(123),ob2(88); 2.含有常量数据成员的自定义类 7.6友元1.使用示例1 2.使用示例2//存放集合元素,最多放maxcard=20个 intgetx(){returnx;} for(inti=0;i<5;i++){ enter'String::~String',text=>a1d11 //输出类对象c的有关数据(c为参数对象) ErrCodeUnion(Set*,Set*); classCla{ <类型说明符><函数名>(<参数表>)const; printStr(); voidsetx(intx0){x=x0;} AddElem(i); while(d<8) //逐一试探8个方向d setx(56); 7.7结构与联合 7.8创建一个集合类型 --参看书小节 7.9利用Stack类型解迷宫问题 --参看书节 若所定义的运算多于一个运算对象时,才将其余运算对象显式地列在该成员函数的参数表中。 printStr(); temp=mazepath. #include<process. processCon(); 通常也只在要描述一批可重叠存放的数据成员时才使用联合union。 pixel(intx0,inty0){ 程序执行后的输出结果为: private: friendcomplexaddCom(complexc1,complexc2);//友元函数 stack::stack(void){ //创建类line对象的构造函数要负责一同创建出所包含的对象成员start与end #include<iostream. reverseOut(); for(inti=0;i<5;i++){ 程序执行后,屏幕显示结果为:7.10含有对象成员的类line --参看书小节的17.11运算符重载--参看书小节 7.11.2运算符重载示例 (以两种方式进行重载) 2.使用类成员方式重载运算符 7.12利用运算符重载实现集合set类型 --参看书小节后半