我的 Windows C++ 程序表现得比以往更糟。它会自发崩溃,通常是在函数返回任何内容时/之后。指示的故障模块有时是程序本身,有时是 ntdll.dll,有时是 StackHash_something,异常代码有时是访问冲突,有时是 40000015。这让我发疯了。我曾经看到这种崩溃发生在为某个变量分配值之后,如果我评论了执行该分配的行(并在其他地方发生......),则不再发生。
但是我无法追踪问题......有什么提示吗?
我实际程序中的一段代码,以举例说明我所说的(尽管我怀疑它是否很有帮助):
void Propozitie::AdaugaConstructieIncidenta(wstring text)
{
// Some function that creates/updates a member in a "Propozitie" object
// constr_incidenta is Entitate*, member of "Propozitie"
// p is a wstring, member of object "Entitate"
delete constr_incidenta;
constr_incidenta = new Entitate;
constr_incidenta->p = text;
// ^ app crashes here.
//had it been constr_incidenta->p = L""; it wouldn't have crashed
}
更新:我重新安装了 Windows、GCC 和所有东西。我得到同样的无法解释的错误!也许一个提示是,分配发生在程序执行了一组递归函数之后,这些函数在途中创建了一些对象......?我很绝望。