我的C++程序编译时没错,一运行就core dump
调试之,最奇怪的是运行到一句很普通的ret += "\n}\n"; 就挂了。程序大概如下:
string func()
{
string ret;
……
ret += "\n}\n";
}
无论把本行的代码注释掉还是把中间的部分注释掉,运行都报Exception has occurred。
费解了一下午,终于醒悟:没return呐!
加上return ret; 解决……
本文分享了一个C++程序在运行时出现coredump的问题及解决过程。作者在调试时发现,即使注释掉某些代码,程序依然报错。最终意识到是因为缺少return语句导致的异常。通过加上return解决了这一问题。
我的C++程序编译时没错,一运行就core dump
调试之,最奇怪的是运行到一句很普通的ret += "\n}\n"; 就挂了。程序大概如下:
string func()
{
string ret;
……
ret += "\n}\n";
}
无论把本行的代码注释掉还是把中间的部分注释掉,运行都报Exception has occurred。
费解了一下午,终于醒悟:没return呐!
加上return ret; 解决……
1271
908
2万+