Detach

从数组里删除给定位置的元素。

CObject*  Detach(

   int  pos      // 位置

   )

参数

pos

[输入]  在数组中的元素位置。

返回值

成功情况下是删除元素的指针, NULL - 如果您未能删除元素。

注释

无论内存管理标志处于什么状态, 从数组删除时元素并未删除。从使用后释放的成分里抽取数组元素的指针。

例如:

//--- 例程 CArrayObj::Detach(int)

#include <Arrays\ArrayObj.mqh>

//---

void OnStart()

  {

   CArrayObj *array=new CArrayObj;

   //---

   if(array==NULL)

     {

      printf("对象创建错误");

      return;

     }

   //--- 添加数组元素

   //--- . . .

   CObject *object=array.Detach(0);

   if(object==NULL)

     {

      printf("Detach error");

      delete array;

      return;

     }

   //--- 使用元素

   //--- . . .

   //--- 删除元素

   delete object;

   //--- 删除数组

   delete array;

  }