删除 c++ 中的对象
我有一个 LinkedList,其中的 Node 有一个字段: void* _data; 现在,我想删除此数据,但我不知道该数据是原始数据还是动态分配的对象。 因此,如果 w…
delete[] 是否释放由指向指针的指针分配的内存
我有一个指向其他对象的指针数组,称为 Comparable* array(在类的模板内)。 据我了解,delete 删除指针引用的内存,而delete [] 则释放分配给数组中…
删除这个?它有什么作用?
给出以下内容: #include using namespace std; class A { public: void func() {delete this;} A() : x(5) {cout << "ctor A" << endl;} ~A() {cout …
我应该如何编写 ISO C++标准一致的自定义新建和删除运算符?
我应该如何编写符合 ISO C++ 标准的自定义 new 和 delete 运算符? 这是极具启发性的 C++ 常见问题解答中的重载 new 和删除的延续,运算符重载及其后…
为什么要替换默认的 new 和 delete 运算符?
为什么应该将默认运算符new和delete替换为自定义new并且删除运算符? 这是在极具启发性的 C++ 常见问题解答中重载 new 和删除: 运算符重载。 此常见…
当程序删除时崩溃时如何调试?
当delete执行时,程序崩溃。我尝试使用以下代码来检查损坏的堆块,但 if 条件结果为 false。 int rc; if (_HEAPOK != (rc = _heapchk())) { switch(rc…
MsgPack 中的 free()/delete 不匹配
我尝试在我的程序中使用 Msgpack。 有人可以帮助我处理 msgpack wiki 中的下一个示例(流媒体功能): http:// wiki.msgpack.org/pages/viewpage.acti…
在迭代指针后,如何通过指针正确删除双精度数组?
我使用以下代码创建了一个双精度数组: double *points = new double[(ii+1)*(jj+1)*(kk+1)*3]; 我意识到为了删除该数组,我所要做的就是: delete[] …
删除C++中的指针对象
我在开源项目中阅读了以下用于删除指针对象的代码 X3C。 //! Delete pointer object. /*! \ingroup _GROUP_UTILFUNC \param p pointer object created…
在 c++0x 中删除 nullptr 仍然安全吗?
在c++03中,很明显删除空指针没有任何效果。事实上,§5.3.5/2 中明确指出: 无论哪种选择,如果delete操作数的值为空指针,则该操作无效。 但是,在 c…
为什么我的应用程序在删除时崩溃?
while(!m_RemoveNodeList.empty()) { list::const_iterator const it = m_RemoveNodeList.begin(); CNode * const pNode = *it; ASSERT(pNode != NULL…