快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

C++基础-异常处理

C++异常处理(较浅)

基本概念

异常处理,是编程语言或计算机硬件里的一种机制,用于处理软件或信息系统中出现异常的情况,保证程序运行的稳定性和健壮性,防止程序崩溃。但是过渡使用会影响程序运行的效率。

目前创新互联公司已为上千多家的企业提供了网站建设、域名、网页空间、绵阳服务器托管、企业网站设计、盖州网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

把可能出现的问题放到try里,进行监控

throw前面的语句如果满足,就抛出(下面的语句就不执行了),抛出的变量或是其他称为异常对象,

catch 捕获try中可能出现的异常,catch(参数)这个参数只能捕获一种类型的异常对象,如果要捕获其他类型,则需要再写一个catch语句

catch(...){  //...其他种类的异常(除了上面所写的异常),放在最下面,普遍捕获
    cout << "捕获其他异常" << endl;
}

例子

面向结果编程(哈哈哈)

小于10输出0;大于100输出1;之间输出“10 < a < 100”...

#include
#include
using namespace std;

int main(){
	int a;
	cout << "请输入要测试的数字:";
	cin >> a;
	try{
		if(a < 10) throw 0;
		if(a > 100) throw 1;
		throw "10 < a < 100";
	}
	catch(int a){
		cout << a << endl;
	}
	catch(const char *str){
		cout << (string)str << endl;
	}
    
	return 0;
}

当显示出terminate called after throwing an instance of 'char const*',出现这种情况的原因就是在catch中异常并没有匹配上去,C++的析构函数抛出异常将自动调用terminate()终止程序。

catch(const char *str) //加一个Cconst就可以了

当前文章:C++基础-异常处理
文章地址:http://6mz.cn/article/dsoijpj.html

其他资讯