c++中try catch的用法

    xiaoxiao2021-11-29  83

    在c++中,可以直接抛出异常之后自己进行捕捉处理,如:(这样就可以在任何自己得到不想要的结果的时候进行中断,比如在进行数据库事务操作的时候,如果某一个语句返回SQL_ERROR则直接抛出异常,在catch块中进行事务回滚)

    #include <iostream> #include <exception> using namespace std; int main () { try { throw 1; throw "error"; } catch(char *str) { cout << str << endl; } catch(int i) { cout << i << endl; } } 也可以自己定义异常类来进行处理:

    #include <iostream> #include <exception> using namespace std; //可以自己定义Exception class myexception: public exception { virtual const char* what() const throw() { return "My exception happened"; } }myex; int main () { try { if(true) //如果,则抛出异常; throw myex; } catch (exception& e) { cout << e.what() << endl; } return 0; }  同时也可以使用标准异常类进行处理:

    #include <iostream> #include <exception> using namespace std; int main () { try { int* myarray= new int[100000]; } catch (exception& e) { cout << "Standard exception: " << e.what() << endl; } return 0; } 转载地址:http://blog.csdn.net/gukesdo/article/details/6901991

    转载请注明原文地址: https://ju.6miu.com/read-678814.html

    最新回复(0)