当前位置: 首页 > news >正文

上海网站建设找站霸网络重庆工程建筑信息网

上海网站建设找站霸网络,重庆工程建筑信息网,湘潭做网站价格 磐石网络,郴州网站开发公司一、多态 相同的代码、实现不同的功能 1.前提 1.类之间有继承关系 2.父类中有虚函数 3.父类的指针指向子类的对象 2.函数重写 1.发生在继承之间 2.父类中有虚函数 3.子类中对父类的虚函数重新实现 3.虚函数 1.在函数头前加上virtual 2.只要基类中的函数是虚函数#xff0c;后…一、多态 相同的代码、实现不同的功能 1.前提 1.类之间有继承关系 2.父类中有虚函数 3.父类的指针指向子类的对象 2.函数重写 1.发生在继承之间 2.父类中有虚函数 3.子类中对父类的虚函数重新实现 3.虚函数 1.在函数头前加上virtual 2.只要基类中的函数是虚函数后面所有派生类中的该函数都是虚函数 3.如果在派生类中对基类中的虚函数进行了重新定义该行为被称为函数重写 4.如果父类指针指向子类的对象可以调用出子类重写后的虚函数 5.只要类中存在虚函数类中就会提供一个虚指针和虚函数表,虚指针指向虚函数表 1.虚函数表用于保存所有虚函数的入口地址只要类中有虚函数就会有一张对应的虚函数表 2.虚函数表的特点会根据继承关系不断更新 3.虚指针存放在类中的起始地址上指向类的虚函数表虚指针只有一个子类的虚指针是从父类中继承下来的 4.静态多态和动态多态 静态多态(编译时多态)函数重载 ------在编译阶段中就已经区分不同的函数了 动态多态(运行时多态)基于继承的多态 ------在代码运行时完成对不同功能的区分 二、纯虚函数 1.虚函数在函数头前面加上virtual关键字 2.纯虚函数在函数头前面加上virtual关键字并且没有函数体直接0    格式virtual 返回值 函数名(参数列表)0; 三、抽象类 1.包含纯虚函数的类就是抽象类 2.抽象类不允许实例化对象只表示一个公共的属性 3.如果父类中包含纯虚函数并且子类中没有对该纯虚函数重写那么子类也是一个抽象类 四、模板 1.模板函数 template typename T //T就是一个模板可以是任意类型 template:定义模板的关键字 typename T:模板提供的数据类型 2.模板函数的实现 2.1自动推导模板类型 模板只对紧跟在后面的第一行代码有效如果后面还想定义模板函数需要重新定义模板 2.2 手动显性调用模板 无法通过函数的参数推导出所有的模板类型 显性调用模板函数的格式 函数名数据类型1数据类型2......(参数); 五、异常处理 1.throw 在可能发生异常的位置提前抛出异常 throw 数据类型(值); 2.try。。。 catch。。。 throw用于抛出异常try尝试接收异常并进行相应的处理 try{}中的存放可能发生异常的代码接收到throw抛出的异常但是只能接收一次所以建议try中只存放一条语句 catch对try获取到的异常进行处理可以对数据类型处理也可以对数据的值处理 作业 1.使用模板类实现顺序栈 ​ #include iostreamusing namespace std; templatetypename T class Seq{ public:T *data; //数据int top; //栈顶指针int maxsize;//栈容量//分配空间Seq(int maxsize);//释放空间~Seq();//入栈void push(T data);//出栈void pop();//展示栈中元素void show();//判满bool full();//判空bool empty();};templatetypename T //分配空间 SeqT::Seq(int maxsize):maxsize(maxsize),top(-1){datanew T[maxsize]; }templatetypename T //释放空间 SeqT::~Seq(){}templatetypename T //入栈 void SeqT::push(T value){if(!full())data[top]value; }templatetypename T //出栈 void SeqT::pop(){if(!empty()){T tempdata[top--];cout出栈元素为tempendl;} }templatetypename T //展示栈中元素 void SeqT::show(){cout栈中元素为: ;for(int i0;itop;i){coutdata[i] ;} }templatetypename T //判满 bool SeqT::full(){return topmaxsize; }templatetypename T //判控 bool SeqT::empty(){return top-1; }int main() {Seq ints(10);s.push(10);s.push(20);s.push(30);s.pop();s.show(); }​ 2.写一个char类型的字符数组对该数组访问越界时抛出异常并做处理。 #include iostream #include cstring using namespace std;int fun(int a,int len){if(alen-1){throw int();}cout下标为aendl; } int main() {int a;cout请输入下标位置endl;cina;char arr[32]hello;int lenstrlen(arr);try{fun(a,len);}catch(int){cout越界访问endl; }return 0; }
http://www.zqtcl.cn/news/161083/

相关文章:

  • 网站建设询价外贸网页制作公司哪家好
  • 网页设计与网站建设报告ckplayer整合WordPress
  • 厦门APP开发网站开发公司百度热搜榜单
  • 网站排名英文怎么说网页编辑器在线使用
  • 湖南做防水堵漏工程商网站网站建设编程软件
  • 网站编辑专题怎么做徐州建筑工程招投标网站
  • 英文网站建设合同招考网站开发
  • 网上商城网站 找什么做dede本地环境搭建网站
  • 网站开发遇到的问题及解决方法深圳市做网站有哪些公司
  • 自媒体网站 程序18款免费软件app下载推荐
  • 产业园门户网站建设方案瑞昌网络推广
  • 长春市网站建设动漫wordpress主题下载地址
  • 如何做专业的模板下载网站wordpress 多网址
  • 做qq头像的网站wordpress 安装 服务器 系统
  • 怎样查网站的注册地点百度小说排行榜2021
  • 网站建设中中文模板wordpress siren
  • 设计本官方网站电脑版附近室内装修公司电话
  • 服务外包网站wordpress 禁止转载
  • l礼品文化网站建设不常见的网络营销方式
  • 做网站侵权腾讯企点打不开
  • iis 网站拒绝显示此网页上海网站建设类岗位
  • 营销型网站建设推荐google关键词
  • 网站上线是前端还是后端来做如何做垂直门户网站
  • 网站建设与管理2018海尔集团网站 建设目的
  • ps做网站大小wordpress调用 php文件
  • php网站忘记后台密码江苏网页制作报价
  • 网站模板 哪个好完备的常州网站推广
  • 衡水淘宝的网站建设濮阳市城乡一体化示范区主任
  • 公司网上注册在哪个网站商洛市商南县城乡建设局网站
  • 怎么才能让网站图文展示大连网站建设设计