我最近尝试运行在ideone.com ...为什么ideone.com这样做?
#include <iostream>
#include <string>
using namespace std;
int getVal(string name)
{
if (name == "Devashish") return 0;
return 1;
}
int main()
{
cout << 5/getVal("Devashish");
return 0;
}
有趣的是这个代码,这个代码没有抛出任何异常,并在输出打印5。该代码被有意写入以产生异常。这里是ideone链接成功编译和执行bug的代码:http://ideone.com/ogDzDU
当我试图在Visual Studio上执行相同的代码时,我得到一个异常(这是预期的)。只是好奇。为什么ideone表现如此?这是编译器或其他程序中的错误吗?
https://blogs.msdn.microsoft.com/oldnewthing/20140627-00/?p=633 –
Visual Studio和一个更多的在线工具提供了异常,所以我认为它会引发异常。即使不是这样,ideone是否给出了预期的? –
*“ideone给予什么'期望?”*未定义的行为是未定义的,因此任何结果都可以称为“按预期”。 –