Debug Assertion Failed File:dgbdel.cpp Line 52
2014-10-10 15:33
513 查看
在类中使用指针申请了动态数组,在值传递时会出现浅拷贝的问题,从而在释放对象空间时出现同一空间被多次释放,debug出现断言错误,File dgbdel.cpp Line 52,
如:class SeqList:public LinearList<T>
{
public:
SeqList(int mSize);
~SeqList() {delete []elements;}
bool IsEmpty() const;
int Length() const;
bool Find(int i,T& x) const;
int Search(T x) const;
bool Insert( int i,T x);
bool Delete(int i);
bool Update(int i,T x);
void Output(ostream& out) const;
private:
int maxLength;
T *elements;
};
template <class T>
SeqList<T>::SeqList(int mSize)
{
maxLength=mSize;
elements=new T[maxLength];
n=0;
}
主程序中调用 Union(LA,LB);
Union原型:void Union(SeqList<T> &LA,SeqList<T> LB)则出现上述错误,
若改为: void Union(SeqList<T> &LA,SeqList<T> &LB)用传递引用作为形参而不是值传递,则错误得到纠正。
参考:http://blog.csdn.net/m_star_jy_sy/article/details/7222343
如:class SeqList:public LinearList<T>
{
public:
SeqList(int mSize);
~SeqList() {delete []elements;}
bool IsEmpty() const;
int Length() const;
bool Find(int i,T& x) const;
int Search(T x) const;
bool Insert( int i,T x);
bool Delete(int i);
bool Update(int i,T x);
void Output(ostream& out) const;
private:
int maxLength;
T *elements;
};
template <class T>
SeqList<T>::SeqList(int mSize)
{
maxLength=mSize;
elements=new T[maxLength];
n=0;
}
主程序中调用 Union(LA,LB);
Union原型:void Union(SeqList<T> &LA,SeqList<T> LB)则出现上述错误,
若改为: void Union(SeqList<T> &LA,SeqList<T> &LB)用传递引用作为形参而不是值传递,则错误得到纠正。
参考:http://blog.csdn.net/m_star_jy_sy/article/details/7222343
相关文章推荐
- Debug Assertion Failed! File:cmdtarg.cpp Line:52
- debug assertion failed, file:dlgdata.cpp,line43
- Debug Assertion Failed! FILE viewform.cpp , line 69
- 关于 debug assertion failed, file:dlgdata.cpp,line"44 错误收藏
- VC Debug Assertion Failed File:dlgdata.cpp Line 43
- 引用 Debug Assertion Failed!File:wingdi.cpp Line:1120
- MFC学习笔记之VC++ Debug Assertion Failed! 错误(File: strex.cpp Line: 690)
- MFC程序出现“Debug Assertion Failed! File:dlgdata.cpp Line: 43 ”错误
- VC错误: debug assertion failed; file dlgdata.cpp; line43
- VC++ Debug Assertion Failed! 错误(File: winmdi.cpp Line: 141)
- MFC程序出现“Debug Assertion Failed! File:dlgdata.cpp Line: 43 ”错误
- Debug Assertion Failed!……File:winocc.cpp Line:345……(Press Retry to debug the application)
- 调试错误 debug assertion failed; file:dlgdata.cpp; line 43 分析析
- 关于 debug assertion failed, file:dlgdata.cpp,line"44 错误
- 引用 Debug Assertion Failed!File:wingdi.cpp Line:1120
- 关于 debug assertion failed, file:dlgdata.cpp,line"43 错误解析
- debug assertion failed, file:dlgdata.cpp,line"43
- Debug Assertion Failed! occont.cpp line:926
- debug assertion failed! winocc.cpp line 381
- debug assertion failed! mfc/winocc.cpp line 381