DetachCurrent

Extrae un elemento de la posición actual sin borrarlo de forma física.

CObject*  DetachCurrent()

Valor devuelto

Puntero a la eliminación de los elementos en caso de éxito, NULL - si no se puede eliminar el elemento.

Nota

Cuando se elimina de la lista, el elemento no se borra en ninguno de los estados de la bandera de gestión de memoria. Después de utilizar el puntero al elemento extraído, éste se tiene que liberar.

Ejemplo:

//--- ejemplo de CList::DetachCurrent()
#include <Arrays\List.mqh> 
//--- 
void OnStart() 
  { 
   CList *list=new CList; 
   //--- 
   if(list==NULL
     { 
      printf("Error al crear el objeto"); 
      return
     } 
   //--- añade elementos a la lista 
   //--- . . . 
   CObject *object=list.DetachCurrent(); 
   if(object==NULL
     { 
      printf("Error al quitar elemento"); 
      delete list; 
      return
     } 
   //--- utiliza el elemento 
   //--- . . . 
   //--- borra el elemento 
   delete object; 
   //--- elimina la lista 
   delete list; 
  }