欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

c++ try_throw_catch异常处理

程序员文章站 2022-06-24 11:13:03
参考https://www.cnblogs.com/xiaojianliu/articles/8900795.html 在程序设计时,针对不同的异常情况,预先设定异常信息,在程序运行时,根据异常提示信息可以有效的定位异常,找出异常原因。 try_throw_catch异常处理处理伪代码: 举例:输入 ......

参考https://www.cnblogs.com/xiaojianliu/articles/8900795.html

在程序设计时,针对不同的异常情况,预先设定异常信息,在程序运行时,根据异常提示信息可以有效的定位异常,找出异常原因。

try_throw_catch异常处理处理伪代码:

try { //尝试捕获异常 
    if (满足异常) throw 异常标志符;  //抛出异常
}
catch (异常类型) {  //异常处理
    cerr << "异常描述信息";
}

举例:输入参数异常处理

#include<iostream>
#include <string>
using namespace std;

//int main(int argc, char** argv)
int main()
{
    int argc = 1;
    try {    //尝试捕获异常
        if (argc == 1) throw std::string("invalid command line parameter.");    //假如输入参数个数只有1个,抛出异常
    }
    catch (std::string& s) {    //异常处理
        std::cerr << s << std::endl;    //s为抛出的异常标志
        std::cerr << "正确用法: "<< "project.exe"<<" "
            << "inputdir"<<" "
            << "outputdir\n"
            << std::endl;

        system("pause");
        return exit_failure;
    }

    system("pause");
    return 0;
}

输出结果:

c++ try_throw_catch异常处理