作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
以下代码在 Visual Studio 2010 中完美抛出异常:
#include <iostream>
#include <cmath>
using namespace std;
int perfectSquare(double sq, int nu);
int main()
{
double num;
double squareRoot;
int perfectSq;
cout << "Enter the a number: ";
cin >> num;
try
{
squareRoot = sqrt(num);
perfectSq = perfectSquare(squareRoot, num);
cout << "The square root is: " << perfectSq << endl;
}
catch(char * exceptionString)
{
cout << exceptionString;
}
cout << "BYE." << endl;
// system("PAUSE");
return 0;
}
int perfectSquare(double sq, int nu)
{
int temp = sq;
if (sq != temp) //clever test; if square root IS NOT an INT
{
throw "not a perfect square.\n";
}
else
{
return sq;
}
}
但是,在 Xcode 中,它不会恢复,并且会一直在调试器中遇到断点。例如,如果我输入 33(不是一个完美的正方形),则会显示以下错误:libc++abi.dylib:终止调用抛出异常(lldb)
它应该“抛出”这一行:“不是一个完美的正方形。”并且程序应该终止(就像在 VS 2010 中一样)。我不想在 Xcode 中启用异常断点,因为我只想让程序在不调试的情况下一直运行到最后。
感谢大家。
最佳答案
你抛出的是一个字符串文字,它在 XCode 中似乎是一个 const char*
,而不是一个 char*
关于c++ - exception_handling_C++_xcode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13603128/
以下代码在 Visual Studio 2010 中完美抛出异常: #include #include using namespace std;
在我的单元测试中,我需要对两个预期相同的对象执行深度相等测试。在测试期间,我发现系统类型中有一些有趣的字段会破坏我的代码。 Exception._xcode是最新的。以下是有关该领域的一些事实: 它被
我是一名优秀的程序员,十分优秀!