【第11节 C++异常处理】

【第11节 C++异常处理】,第1张

第11节 C++异常处理 基本的异常处理
  • ​ 异常处理机制:暂缓问题处理,不在当前函数中处理,在其他调用者中处理
  • ​ 什么是异常,任何东西都可以认为是异常,错误只是异常的一种
  • ​ 异常一旦被抛出,不做处理,如果引发异常,会调用默认的abort终止程序
  • ​ 捕获和处理异常

​ throw抛出异常,(可以理解为返回值,值是任何类型都可以,使我们处理异常一个参照)

​ try(检查,捕获)和catch(处理异常)

//try 与catch必须是一起出现,并且他们{}不能省略
try
{
    //正常需要检查是否存在异常代码
}
catch(类型)//理解为switch中case语句
{
    //处理是根据抛出数据类型决定如何处理
}
//一个try可以对应多个catch
try
{
    //...
    
}
catch(int)
{
    
}
catch(double)
{
    
}
catch(string)
{
    
}
//catch 和 if else _if 执行机制是一样的,只能执行一个匹配项
//删减符  ... 任何类型异常都捕获
//catch(...)
#include
using namespace std;
int divisor(int a, int b)
{
	if (b == 0)//什么是异常
		throw 0;//怎么抛出
	return a / b;
}

void print(int a,int b)
{

	cout << divisor(a, b);
}

int main()
{
	try
	{
		
		print(1, 0);//引发异常不做处理
		//print(1,0);
		cout << "别的代码" << endl;
	}
	catch (int)
	{
		cout << "除数不能为 0" << endl;
	}
	catch (...)//捕获任何类型的异常
	{
		cout << "除数不能为 0" << endl;
	}



	return 0;
}
  • 异常处理中的传参

​ catch(int a) //隐藏一个传参 *** 作

第12节 C++模板

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/733440.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-27
下一篇 2022-04-27

发表评论

登录后才能评论

评论列表(0条)

保存