主文件
#include <iostream>
#include "Simple.h"
using namespace std;
int main()
{
Simple s;
s = Simple();
}
简单的.cpp
#include "Simple.h"
Simple::Simple(void)
{
ptr = new int[10];
}
Simple::~Simple(void)
{
delete [] ptr;
}
简单的.h
#pragma once
class Simple
{
public:
Simple(void);
~Simple(void);
private:
int* ptr;
};
当我运行 main.cpp 时,程序停止并返回错误:
Microsoft Visual C++ 调试库调试断言失败!
程序:...ts\Visual Studio 2010 C++\simple error\Debug\simple error.exe 文件:f:\dd\vctools\crt_bld\self_x86\crt\src\dbgdel.cpp 行:52
表达式:_BLOCK_TYPE_IS_VALID(pHead->nBlockUse)
有关您的程序如何导致断言失败的信息,请参阅有关断言的 Visual C++ 文档。
(按重试调试应用程序)
为什么会发生在如此常见的例子中?