同样一段代码,为什么QT不能截获异常,而Eclipse可以?
boost::regex reg;;
try
{
reg.assign( "[]d");
}
catch(std::runtime_error & e)
{
//异常处理
}
在Eclipse中可以正确处理异常,但再QT中总是会出现windows那个讨厌的runtime error提示。为什么呢? --------------------编程问答-------------------- 能否处理异常,要看你编译器、工程设置。
--------------------编程问答--------------------
难道这是说QT不能处理BOOST的异常?还是说要设置什么啊? --------------------编程问答--------------------
先分清:语言、库、编译器、IDE 等基本概念,然后再介绍你遇到什么问题 --------------------编程问答--------------------
我知道QT只是一个IDE,但是QT和我的elipse用的都是mingw,用的是同样的boost.regex库。都是在windows系统下编译。按理说他们处理异常的情况应该是一样的啊,为什么在qt里编译以后就不行了呢? --------------------编程问答--------------------
Qt 可以说是个库,Qt-creator和Eclipse是IDE --------------------编程问答--------------------
你是说QT的库对异常的处理方式不一样?那我要怎么设置才能处理boost.regex抛出异常呢? --------------------编程问答--------------------
你是说QT库对异常的处理不一样?那么要怎么设置才能在QT中处理boost.regex库抛出的异常呢? --------------------编程问答-------------------- 先分清:语言、库、编译器、IDE 等基本概念吧。
这个和库、IDE等东西没有关系。
不清楚你为何会盯着Qt这个库不放,而且还把库(Qt)与IDE(Eclipse)并列 --------------------编程问答--------------------
其实我只想知道解决办法是什么 --------------------编程问答-------------------- 蛋疼!!!
人家就问个问题,扯那么多干嘛
会就会,不会就不会呗 --------------------编程问答-------------------- 多一个分号,另注意标准头文件是否都包含了,你也可以设置断点看看。 --------------------编程问答--------------------
后来我才知道是版本问题。我用的QT库是用gcc4.4 编译的,我现在用的是gcc4.6,所以才会出现异常问题。解决办法是自己编译一遍QT库。 --------------------编程问答--------------------
补充:移动开发 , Qt