我的程序编译得很好,但每次抛出时都会崩溃(不在try ... catch块内)。
以下是用于项目中所有文件的参数的命令:
mingw32-g++.exe -fexceptions -DWIN32 -D_WINDOWS -D_MBCS -DNO_SOCKLEN_T -DDONTUSEMEMMANAGER -Wall -g -W -fexceptions -DDEBUG
(我知道Wall不需要W,而且我有两次-fexceptions。)
编辑:我知道这种行为实际上并没有错。事情是,它过去工作又称程序不会崩溃。但是几天前我对一些文件进行了更改,再次编译,突然崩溃了
答案 0 :(得分:6)
嗯,这是预期的行为。标准说[except.handle]:
如果找不到匹配的处理程序,则调用函数std :: terminate(); [...]
答案 1 :(得分:4)
这称为未处理的异常。预期的行为是程序应该退出。