首页 > 编程语言 >复试C++ 异常 看程序写结果

复试C++ 异常 看程序写结果

时间:2024-03-08 11:00:29浏览次数:28  
标签:case 程序 C++ throw 复试 ErrorA error runtime public

就算每一个case后面都没有break , throw相当于起了break的作用?

#include <iostream>
#include <stdexcept>
using namespace std;
class ErrorA: public runtime_error{
public:
    ErrorA():runtime_error{"errorAAAA"}{
    }
};

class ErrorB: public runtime_error{
public:
    ErrorB():runtime_error{"errorBBBB"}{
    }
};
class ErrorC: public ErrorA{ public: ErrorC(){ runtime_error{"errorCCCC"}; } }; int main(){ for(int i = 0 ;i < 4; i++){ try{ switch(i){ case 0:throw runtime_error{"runtime_error1111"}; break; case 1:throw ErrorA(); case 2:throw ErrorB(); case 3:throw ErrorC(); } }catch(ErrorA &err){ cout << err.what() << endl; }catch(ErrorB &err){ cout << err.what() << endl; }catch(ErrorC &err){ cout << err.what() << endl; }catch(runtime_error &err){ cout << err.what() << endl; } } return 0; }

结果

runtime_error1111
errorAAAA
errorBBBB
errorAAAA

 

标签:case,程序,C++,throw,复试,ErrorA,error,runtime,public
From: https://www.cnblogs.com/uacs2024/p/18060531

相关文章

  • 清理挖矿程序的脚本
    systemctldisablemyservice.servicesystemctlstopmyservice.servicesystemctlstatusmyservice.servicerm-fr/usr/lib/systemd/system/myservice.servicerm-fr/root/.cfgrm-fr/usr/bin/mslogrm-fr/usr/bin/playersed-i/disown/d/var/spool/cron/root......
  • Jpackage-制作无需预装Java环境的Jar可执行程序
    JAR包要在预装JRE环境的系统上执行。如果没有预先安装JRE环境,又想直接运行Java程序,该怎么办呢?这篇文章我们会先学习如何将Java程序打包成一个可执行的JavaJAR文件。然后演示如何使用这个JAR文件生成Windows、Linux、MacOS上的可执行程序。我们将使用Java自带......
  • C++入门编程----C++运算符(8)
    什么是运算符运算符是让程序执行特定的数学或逻辑操作的符号,用来表示针对数据的特定操作,也称之为操作符。C++运算符分别有算术运算符、关系运算符、逻辑运算符、赋值运算符、位运算符、移位运算符、sizeof运算符、三目运算符、逗号运算符和域解析运算符。算术运算符C++中的算术......
  • c++ lambda表达式
    引入lambda表达式也有人称之为匿名函数,能够在任何作用域下快速定义一个函数下面这行代码就是一个最简单的lambda表达式,最后输出为3autof=[](intx,inty)->int{returnx+y;};cout<<f(1,2);我们来解析一下lambda表达式autof=[](intx,inty)->int{returnx+y;};......
  • C++保证线程安全的方式
    1、互斥量可以确保同一时间只有一个线程访问临界区,防止出现竞态条件。2、原子操作std::atomic<int>mutex(1);对原子变量的操作是线程安全的。3、读写锁std::shared_mutexmutex;//读者:共享锁定mutex.lock_shared();mutex.unlock_shared();//写者:独占锁定mutex.lock......
  • c/c++指针中 * 和 & 的区别与联系
    在C语言中,*和&是两个非常基础但功能相反的操作符,它们分别是解引用(dereference)操作符和取地址(address-of)操作符。&(取地址操作符)用途:&操作符用来获取变量的内存地址。示例:假设有一个整型变量intx=10;,则&x表示获取变量x的内存地址。如果你有一个指针变量想要存储变量x的地址,可......
  • 微信小程序双向数据绑定
    使用vant组件实现引入"van-field":"@vant/weapp/field/index" 1.<van-cell-group>2.<van-field3.model:value="{{value}}"4.placeholder="请输入用户名"5.border="{{false}}"6./>7.</......
  • 程序员的心理学书单 ——《蛤蟆先生去看心理医生》罗伯特·戴博德电子书 ,帮助愿意走出
     主人公蛤蟆先生本来是一个热情、时尚又爱冒险的家伙,可却突然深陷抑郁,不能自拔。在朋友鼹鼠和河鼠的帮助下,他去找心理咨询师苍鹭做了十次心理咨询。最后不仅恢复了正常的生活,重拾了快乐,内心也发生了改变。蛤蟆先生,其实就是每一个你我的真实写照。这本书可以启发我们开启和......
  • SDI 通常指的是“System Deployment Image”,即系统部署映像。这是一个包含操作系统、
    SDI通常指的是“SystemDeploymentImage”,即系统部署映像。这是一个包含操作系统、应用程序和设置的映像文件,用于在多台计算机上进行相同配置的系统部署。如果您想要在Windows上读取用户的SDI文件,您可以按照以下步骤进行操作:使用DISM工具:Windows提供了一个名为DIS......
  • 快捷方式在Windows操作系统中提供了一种方便快捷地访问程序或文件的方法,可以分别存在
    快捷方式在Windows操作系统中提供了一种方便快捷地访问程序或文件的方法,可以分别存在于桌面、开始菜单和任务栏等位置。下面是关于快捷方式在不同位置的技术原理:桌面快捷方式:桌面快捷方式实际上是一个.lnk文件,它包含了指向目标文件或程序的路径信息以及其他属性。创建桌面快捷......