news 2026/4/9 8:13:56

C++之函数异常与标准异常类

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++之函数异常与标准异常类

函数异常

  • 当一个函数声明中不带任何异常描述时,它可以抛出任何异常
  • C++允许限制函数能够抛出的异常类型,限制方法时在函数声明后面添加一个throw参数表,在其中指定函数可以抛出的异常类型
intfun(int,char)throw(int,char);
  • 函数fun被限定只允许抛出int和char类型的异常,当fun函数抛出其他类型的异常时,程序将被异常终止
  • 如果函数不允许抛出任何异常,只需要指定throw限制表为不包括任何类型的空表
intfun(int,char)throw();
#include<iostream>#include<cstdio>#include<csetjmp>usingnamespacestd;classFileError{};classMemoryError{};voidfunc(void)throw(FileError,MemoryError){throwFileError();//throw MemoryError();}intmain(void){try{func();}catch(FileError&ex){cout<<"file error"<<endl;return-1;}catch(MemoryError&ex){cout<<"memory error"<<endl;return-1;}return0;}

标准异常类

  • C++库中专门设计了exception类表示异常

#include<iostream>#include<cstdio>#include<csetjmp>usingnamespacestd;classFileError:publicexception{public:virtualconstchar*what()constthrow(){cout<<"handle file error"<<endl;return"FileError";}};classMemoryError:publicexception{public:virtualconstchar*what()constthrow(){cout<<"handle memory error"<<endl;return"MemoryError";}};voidfunc(void)throw(FileError,MemoryError){//throw FileError();throwMemoryError();}intmain(void){try{func();}catch(exception&ex){cout<<ex.what()<<endl;return-1;}return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/31 15:39:17

3.空间复杂度

如果不考虑时间和空间的因素&#xff0c;所有的问题都可以通过穷举法解决。这也是一开始做AI的强调算力的原因。一&#xff0c;概念空间复杂度是指算法在执行过程中所需要的存储空间。包括算法运行时使用的变量/数组/链表 等数据结构所占用的内存空间。通俗一点说&#xff0c;就…

作者头像 李华
网站建设 2026/4/4 13:46:11

6.C嘎嘎STL vector

一&#xff0c;C嘎嘎STL 在实际项目开发中&#xff0c;无论是 C 还是 C 语言&#xff0c;都不建议自行手写数据结构实现 —— 现成的成熟库 / 标准容器往往更可靠。而单片机开发中对数据结构的使用本就偏少&#xff0c;核心原因在于&#xff1a;但凡涉及稍复杂的动态数据结构&…

作者头像 李华
网站建设 2026/4/4 20:19:00

3D打印机,走出极客圈

3D打印不是新鲜事物&#xff0c;但这一轮市场爆发背后发生了什么&#xff1f;文&#xff5c;游勇编&#xff5c;周路平自从买了第一台3D打印机之后&#xff0c;短短3个月时间&#xff0c;周泽的架子上已经堆满了各种3D打印的作品&#xff0c;除了皮卡丘、马里奥、狐狸尼克等经典…

作者头像 李华
网站建设 2026/4/4 11:34:22

Windows部署OpenClaw报错不断?这篇环境配置指南帮你解决难题

文章目录 📖 介绍 📖 🏡 演示环境 🏡 📒 Windows部署OpenClaw的环境配置指南 📒 📝 部署前置环境 📝 环境要求清单 📝 Windows版本兼容性说明 📝 Node.js 安装指南 🌐 官方下载地址 📥 安装步骤 🔧 环境变量配置(自动) ⚠️ 常见问题 📝 Git 安装…

作者头像 李华