jjzjj

CAtlArray

全部标签

c++ - 删除和替换 CAtlArray 中间的对象指针

我有一个CAtlArray,它保存像这样定义的对象指针CAtlArrayobjPtrArray;在某些情况下需要更新对象而不是复制成员,我宁愿只更新指针。基本上,这发生在更新中:objPtryArray.SetAt(i,newObj);我的第一个问题是我是否需要删除曾经存在于i中的指针(是的,它是用new分配的)?我的直觉告诉我是的,但是当我尝试这样做时程序崩溃了。我尝试了以下多种变体:deleteobjPtrArray[i];objPtrArray.SetAt(i,newObj);另一个尝试是:MyClass*tmpObj;tmpObj=objPtrArray[i];objPtrAr