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

vps wordpress cpu占用过高谷歌seo搜索引擎下载

vps wordpress cpu占用过高,谷歌seo搜索引擎下载,免费咨询医院,云集网站哪个公司做的目录异常匹配catch: 按异常类型匹配为何要使用异常类内建异常类标准库中的异常基类标准库中的异常类例1#xff1a;vector下标访问越界out_of_range异常例2#xff1a;内存分配失败bad_alloc异常例3#xff1a;侧向转换失败bad_cast异常类几种情况#xff0c;使用对应异常异… 目录异常匹配catch: 按异常类型匹配为何要使用异常类内建异常类标准库中的异常基类标准库中的异常类例1vector下标访问越界out_of_range异常例2内存分配失败bad_alloc异常例3侧向转换失败bad_cast异常类几种情况使用对应异常异常匹配 catch: 按异常类型匹配 已知try是监视可能出现问题的代码throw是扔出问题catch是看扔出的问题是否和它的类型匹配如果是匹配那么就抓住问题进行处理。 这里的类型使用传引用避免拷贝浪费。 catch ( ExceptionType parameter ) { /* 处理异常 */ }若try{}中所抛异常类型与catch()的参数类型(ExceptionType)匹配则进入catch块 若对异常对象的内容不感兴趣可省略catch参数只保留类型。 如 catch ( ExceptionType ) { /* 处理异常 */ }举例 f1()抛出整型异常。 f2()是要申请28G内存如果电脑内存不够执行代码会出错抛出bad_alloc异常。这是C规定的new出现问题就会抛出bad_alloc异常。bad_alloc是C异常类exception基类的派生类。 void f1() { throw 100; } void f2() { for (int i 1; i 100; i) new int[70000000]; }对于f1的两种处理 try { f1(); } catch (int) { //仅有类型cout Error endl; }try { f1(); } catch (int e) { //类型参数cout e endl; }对于f2的两种处理 注意e.what()是exception类内部的一个虚函数返回的是一个指针指向一个字符串包含了异常的解释信息。 try { f2(); } catch (bad_alloc) {cout new failed endl; } try { f2(); } catch (bad_alloc e) {cout Exception: e.what() endl; }为何要使用异常类 整数作为异常类型只能获取整数的信息。 不使用异常类则捕获的异常所能传递的信息量很少。 try {// ... } catch (int e) {//do something with e }使用异常类则可以在抛出异常时传递很多信息在捕获异常时接收这些信息。 class Beautiful {string name;string hometown;int salary;string misdoing; // ………… } try {// ... } catch (Beautiful object) {//do something with object }内建异常类 标准库中的异常基类 exception 是标准库所有异常类的基类 使用异常类需要包括头文件 #include exception class exception需要注意的部分如下 exception(); // 构造函数 virtual const char* what(); //返回解释性字符串 what()返回的指针指向拥有解释信息的空终止字符串的指针。该指针保证在获取它的异常对象被销毁前或在调用该异常对象的非静态成员函数前合法 标准库中的异常类 在使用所有标准库异常类的时候都必须附加std名字空间。 runtime_error与logic_error的使用区别 来自wiki的解释 逻辑错误有时称为语义错误是程序中的一个错误它会导致程序错误运行但不会异常终止或崩溃。逻辑错误会产生非预期或不希望的输出或其他行为尽管它可能不会立即被识别。 编译语言和解释语言都会出现逻辑错误。与有语法错误的程序不同有逻辑错误的程序在语言中是有效的程序尽管它的行为不符合预期。 运行时错误一个错误在程序执行过程中发生的。相反编译时错误发生在程序编译时。运行时错误表示程序中的错误或设计人员预期的问题但却无能为力。例如内存不足通常会导致运行时错误。 例1vector下标访问越界out_of_range异常 vector有许多种访问元素的方式其中[]下标访问不会做越界检查at()会做越界检查。 我们将它截获 例2内存分配失败bad_alloc异常 #includeiostream using namespace std; int main() {for( int i 0; i 10000; i){auto *p new long long int [70000];cout i array endl;}return 0; }进行捕获 #includeiostream #include exception #include stdexcept #include new using namespace std; int main() {try {for (int i 0; i 10000; i){auto* p new long long int[70000];cout i array endl;}}catch (bad_alloc e){cout exception e.what() endl;}return 0; }程序正常退出。 例3侧向转换失败bad_cast异常类 创建基类student 创建派生类Undergraduate和Graduate 主函数中用dynamic_cast 将Undergraduate类型转换为Graduate类型. dynamic_cast只有在做引用类型转换时候转换失败才会抛出异常。使用指针类型时如果转换失败会返回nullptr #include iostream #include exception #include stdexceptusing namespace std;class Student { public:Student() default;virtual void foo() {}; }; class Undergraduate : public Student {}; class Graduate : public Student {}; int main() {Undergraduate u;Graduate g;Student *s1 u;Student *s2 g;//正常操作p指针不为nullptrGraduate *p dynamic_castGraduate *(s2);//转化不成功p2指针为nullptrGraduate *p2 dynamic_castGraduate *(s1);if(p2 nullptr){cout cast s1 to Graduate* failed endl;}else{cout cast s1 to Graduate* succeeded endl;}//引用抛异常try{Graduate r1 dynamic_castGraduate (u);}catch (bad_cast e){cout Exception: e.what() endl;}return 0; }几种情况使用对应异常 1、除法运算中除数为0 invalid_argument 2、在只读文件系统中以写模式打开一个文件流 filesystem::filesystem_error 3、 数组a的容量为5向 a[5] 中写入数据 out_of_range 4、用 new 申请内存失败 bad_array_new_length 5、将A指针类型转换为B指针类型失败 bad_any_cast 6、将 1234567 这个整数存到一个 short int 类型的变量中在32位C编译器中编译 length_error
http://www.pierceye.com/news/181169/

相关文章:

  • 上海专业网站建设公司电话企业营销网站建设的基本步骤
  • 中国专业的网站建设知乎wordpress
  • 广州网站设计公司兴田德润活动这是我做的网站吗
  • html5做网站一线全屋定制10大品牌
  • 广州百度网站建设公司wordpress免费媒体库管理
  • 郑州网站建设炉石在线a视频网站一级a做片
  • 网站越来越难做做杂志的模板下载网站有哪些
  • 怎么做化妆品网站内容规划免费做网站的网页
  • seo站外优化平台网站建设程序流程
  • 凡科轻站官网做个简单的企业小网站
  • 动漫做h免费网站有哪些系统开发是做什么的
  • 企业做网站流程全国地推公司排名
  • 揭阳新闻最新消息常用的seo工具推荐
  • 网站方案策划中国最大的博客网站
  • 网站建设加空间食品包装设计ppt
  • 搭建一个网站 优帮云张家口远大建设集团网站
  • wordpress本地视频播放器苏州谷歌seo
  • 银川网站建设有哪些16岁做分期网站
  • 制作网站对话框火车票网站建设多少
  • 怎么问客户做不做网站设计一个简单的广告
  • 佛山 网站关键词优化trel域名
  • 哪家网站建设好大连房产网
  • 企业做推广哪些网站比较好兰州有做百度网站的吗
  • 网站建设和管理规则自己建网站的流程
  • 网站的前期推广广州网站建设加盟
  • 网站灰色 代码深圳的深圳的网站建设公司
  • 做电影采集网站需要多大vps安徽建设新工程信息网站
  • 中小企业网站制作化工厂网站建设
  • 电子政务网站建设出版社百度网页提交入口
  • 专业柳州网站建设哪家便宜淄博桓台网站建设定制