C++学习Day09之系统标准异常

目录

  • 一、程序及输出
    • 1.1 系统标准异常示例
    • 1.2 标准异常表格
  • 二、分析与总结


一、程序及输出

1.1 系统标准异常示例

#include<iostream>
using namespace std;
#include <stdexcept> //  std 标准  except 异常class Person
{
public:Person(int age){if (age < 0 || age > 150){throw out_of_range("年龄必须在 0 ~ 150之间");}else{this->m_Age = age;}}int m_Age;
};void test01()
{try{Person p(151);}catch ( exception &e){cout << e.what() << endl;}}int main(){test01();system("pause");return EXIT_SUCCESS;
}

输出:
在这里插入图片描述

1.2 标准异常表格

标准异常类用途
std::exception所有标准异常类的基类,定义了一个虚函数 what(),用于返回异常的描述字符串
std::bad_alloc在动态内存分配失败时抛出的异常
std::bad_cast在 dynamic_cast 运算失败时抛出的异常。
std::bad_exception用于处理不在异常规范列表中的异常。
std::bad_typeid在 typeid 运算失败时抛出的异常。
std::logic_error逻辑错误异常的基类。
std::domain_error当参数超出有效域时抛出的异常。
std::invalid_argument当参数无效时抛出的异常。
std::length_error当长度超出有效范围时抛出的异常。
std::out_of_range当访问超出有效范围的元素时抛出的异常
std::runtime_error运行时错误异常的基类。
std::overflow_error在数值计算溢出时抛出的异常。
std::range_error在数值超出有效范围时抛出的异常。
std::underflow_error在数值计算下溢时抛出的异常。

二、分析与总结

系统标准异常使用

1 引入头文件 #include < stdexcept>
2 抛出越界异常 throw out_of_range(“…”)
3 获取错误信息 catch( exception & e ) e.what();

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/484054.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络安全“降本增笑”的三大帮手

在网络安全这个快速变化和危机四伏的领域中&#xff0c;通过使用正确的工具和方法&#xff0c;我们可以在工作中取得更高的效率&#xff0c;并降低相关成本。 雷池社区版 雷池社区版—开源Web应用防火墙。这款产品凭借强大的规则引擎&#xff0c;它允许用户自定义安全策略&…

Docker本地部署Rss订阅工具并实现公网远程访问

文章目录 1. Docker 安装2. Docker 部署Rsshub3. 本地访问Rsshub4. Linux安装Cpolar5. 配置公网地址6. 远程访问Rsshub7. 固定Cpolar公网地址8. 固定地址访问 Rsshub是一个开源、简单易用、易于扩展的RSS生成器&#xff0c;它可以为各种内容生成RSS订阅源。 Rsshub借助于开源社…

五、分类算法 总结

代码&#xff1a; from sklearn.datasets import load_iris, fetch_20newsgroups from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.model_selection import train_test_split, GridSearchCV from sklearn.naive_bayes import MultinomialNB from s…

成年人学英语其实有个捷径,但你们都不信

上班了…… 我不想上班&#xff0c;只想躺平&#xff0c;同时银行卡上的余额还能够不断的增加。 当然现阶段肯定是不行的&#xff0c;我仍要靠打工养活自己&#xff0c;而且先要获得第一桶金。 第一桶金在何方&#xff1f;我还不知道&#xff0c;人在迷茫时&#xff0c;就来学英…

如何在Linux搭建Inis网站,并发布至公网实现远程访问【内网穿透】

如何在Linux搭建Inis网站&#xff0c;并发布至公网实现远程访问【内网穿透】 前言1. Inis博客网站搭建1.1. Inis博客网站下载和安装1.2 Inis博客网站测试1.3 cpolar的安装和注册 2. 本地网页发布2.1 Cpolar临时数据隧道2.2 Cpolar稳定隧道&#xff08;云端设置&#xff09;2.3.…

计算机服务器中了DevicData勒索病毒怎么办?DevicData勒索病毒解密数据恢复

网络技术的发展与更新为企业提供了极大便利&#xff0c;让越来越多的企业走向了正规化、数字化&#xff0c;因此&#xff0c;企业的数据安全也成为了大家关心的主要话题&#xff0c;但网络是一把双刃剑&#xff0c;即便企业做好了安全防护&#xff0c;依旧会给企业的数据安全带…

无线充电器沦为帮凶,不仅操纵语音助手,还能烧毁手机

据BleepingComputer消息&#xff0c;佛罗里达大学和 CertiK的一项学术研究表明&#xff0c;名为“VoltSchemer”的新攻击利用电磁干扰&#xff0c;不仅可以让现成的无线充电器操纵智能手机的语音助手&#xff0c;还能够对设备以高热的形式进行物理破坏。 这种近乎有些科幻的方…

Stable Diffusion 模型分享:Dark Sushi Mix 大颗寿司Mix

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里。 文章目录 模型介绍生成案例案例一案例二案例三案例四案例五案例六案例七案例八案例九案例十

Mysql系列之命令行登录、连接工具登录、数据库表常用命令

登录与常用命令 连接工具登录命令行登录数据库1、查看数据库2、指定数据库3、查看当前数据库4、建库语句 数据表1、查看数据表2、查看表结构信息3、查看建表语句4、建表语句 连接工具登录 首先下载mysql连接工具&#xff0c;解压后直接打开软件&#xff0c;按以下步骤操作&…

代码随想录|day 22

Day 22 一、回溯法学习 在讲二叉树的递归 (opens new window)中我们说了递归三部曲&#xff0c;这里我再给大家列出回溯三部曲。 回溯函数模板返回值以及参数 回溯函数终止条件 回溯搜索的遍历过程 二、代码 77. 组合 - 力扣&#xff08;LeetCode&#xff09; 差一点就…

后端程序员入门react笔记——react的diff算法(三)

diffing算法 虚拟dom 我们知道&#xff0c;react里面操作的都是虚拟dom&#xff0c;最后经过render渲染为真正的dom&#xff0c;那么为什么要提出虚拟dom这个概念呢&#xff1f;其实就是将逻辑和视图区分开&#xff0c;react的虚拟dom&#xff0c;就相当于mvc的c&#xff0c;…

Windows下载MobaXterm软件访问远程服务器的方法

本文介绍在Windows电脑中&#xff0c;下载、配置MobaXterm软件&#xff0c;从而连接、操作远程服务器的方法。 因为是在Windows操作系统的电脑中连接服务器&#xff0c;所以建议使用MobaXterm、PuTTY等可视化的远程计算机管理软件&#xff0c;来实现对服务器的连接与后续相关操…