DetachCurrent
DetachCurrent
抽取列表当前位置的元素但无需将其 “物理” 删除。
CObject* DetachCurrent()返回值
成功情况下是删除元素的指针, NULL - 如果您未能删除元素。
注释
无论内存管理标志处于什么状态, 从列表删除时元素并未删除。从使用后释放的成分里抽取列表元素的指针。
例如:
//--- 例程 CList::DetachCurrent()
#include <Arrays\List.mqh>
//---
void OnStart()
{
CList *list=new CList;
//---
if(list==NULL)
{
printf("对象创建错误");
return;
}
//--- 添加列表元素
//--- . . .
CObject *object=list.DetachCurrent();
if(object==NULL)
{
printf("分离错误");
delete list;
return;
}
//--- 使用元素
//--- . . .
//--- 删除元素
delete object;
//--- 删除列表
delete list;
}