运行下面的代码,将出现什么情况?( )
1 double hmean(double a, double b) { 2 if (a == -b ) 3 throw runtime_error("Runtime error occurred"); 4 return 2.0*a*b/(a + b); 5 } 6 7 int main() { 8 double x = 10; 9 double y = -10; 10 11 try { 12 int result = hmean(x, y); 13 cout << "hmean: " << result << endl; 14 } 15 catch (const runtime_error& e) { 16 cout << "Caught: " << e.what() << endl; 17 } catch (...) { 18 cout << "Caught an unknown exception." << endl; 19 } 20 return 0; 21 }
屏幕上输出 Caught: Runtime error occurred
屏幕上输出 Caught an unknown exception
程序调用 std::terminate()
编译错误