Clase System::Collections::Generic::LinkedList

LinkedList class

LinkedList forward declaration.

template<typename T>class LinkedList : public virtual System::Object,
                                       public System::Collections::Generic::ICollection<T>,
                                       private System::Collections::Invalidatable
ParámetroDescripción
TTipo de valor contenido.

Nested classes

Métodos

MétodoDescripción
Add(const T&) overrideAñade element al final de la lista.
AddAfter(const SharedPtr<LinkedListNode<T>>&, const T&)Añade element después de node de la lista.
AddAfter(const SharedPtr<LinkedListNode<T>>&, const SharedPtr<LinkedListNode<T>>&)Añade newNode después de node de la lista.
AddBefore(const SharedPtr<LinkedListNode<T>>&, const T&)Añade element antes de node de la lista.
AddBefore(const SharedPtr<LinkedListNode<T>>&, const SharedPtr<LinkedListNode<T>>&)Añade newNode antes de node de la lista.
AddFirst(const T&)Añade element al principio de la lista.
AddFirst(const SharedPtr<LinkedListNode<T>>&)Añade newNode al principio de la lista.
AddLast(const T&)Añade element al final de la lista.
AddLast(const SharedPtr<LinkedListNode<T>>&)Agrega newNode al final de la lista.
begin()Obtiene el iterador al primer elemento de la colección.
begin() constObtiene el iterador al primer elemento de la colección calificada como const.
cbegin() constObtiene el iterador al primer elemento calificado como const de la colección.
cend() constObtiene el iterador para un elemento const que no existe detrás del final de la colección.
Clear() overrideElimina todos los elementos de la lista.
Contains(const T&) const overrideComprueba si element está presente en la lista.
CopyTo(ArrayPtr<T>, int) overrideCopia los datos del contenedor en los elementos existentes del arreglo.
crbegin() constObtiene un iterador inverso al último elemento const de la colección (el primero en reversa).
crend() constObtiene un iterador inverso para un elemento const inexistente antes del inicio de la colección.
end()Obtiene el iterador para un elemento que no existe detrás del final de la colección.
end() constObtiene el iterador para un elemento que no existe detrás del final de la colección calificada como const.
Find(const T&) constRealiza una búsqueda en dirección hacia adelante de un element en la lista.
FindLast(const T&) constRealiza una búsqueda en dirección inversa de un element en la lista.
get_Count() const overrideObtiene el número de elementos en la lista.
get_First() constObtiene un puntero al primer elemento de la lista.
get_Last() constObtiene un puntero al último elemento de la lista.
GetEnumerator() overrideObtiene un enumerador para iterar a través de la LinkedList actual.
LinkedList()Crea una LinkedList vacía.
LinkedList(const SharedPtr<IEnumerable<T>>&)Constructor de copia.
rbegin()Obtiene un iterador inverso al último elemento de la colección (el primero en reversa).
rbegin() constObtiene un iterador inverso al último elemento de la colección calificada como const (el primero en reversa).
Remove(const T&) overrideElimina la primera aparición del element especificado de la lista.
Remove(const SharedPtr<LinkedListNode<T>>&)Elimina el nodo de la lista.
RemoveFirst()Elimina el primer nodo de la lista.
RemoveLast()Elimina el último nodo de la lista.
rend()Obtiene un iterador inverso para un elemento inexistente antes del inicio de la colección.
rend() constObtiene un iterador inverso para un elemento inexistente antes del inicio de la colección calificada como const.
virtualizeBeginConstIterator() const overrideObtiene la implementación del iterador const begin para el contenedor actual.
virtualizeBeginIterator() overrideObtiene la implementación del iterador begin para el contenedor actual.
virtualizeEndConstIterator() const overrideObtiene la implementación del iterador const end para el contenedor actual.
virtualizeEndIterator() overrideObtiene la implementación del iterador end para el contenedor actual.

Typedefs

TypedefDescripción
const_iteratorTipo de iterador constante.
const_reverse_iteratorTipo de iterador inverso constante.
iteratorTipo de iterador.
list_tTipo de datos subyacente.
reverse_iteratorTipo de iterador inverso.

Observaciones

Contenedor de lista enlazada. Implementa un envoltorio sobre std::list. Los objetos de esta clase solo deben ser asignados usando la función System::MakeObject(). Nunca cree una instancia de este tipo en la pila ni usando el operador new, ya que resultará en errores de tiempo de ejecución y/o fallas de aserción. Siempre envuelva esta clase en un puntero System::SmartPtr y use este puntero para pasarlo a funciones como argumento.

#include <system/collections/linkedlist.h>
#include <system/smart_ptr.h>

using namespace System;
using namespace System::Collections::Generic;

int main()
{
  // Cree una instancia de la clase LinkedList.
  auto list = MakeObject<LinkedList<int>>();

  // Llena la lista enlazada.
  list->AddFirst(1);
  list->AddLast(30);
  list->AddAfter(list->get_First(), 15);
  list->AddBefore(list->get_Last(), 25);

  // Imprime los elementos de la lista enlazada.
  for (const auto item: list)
  {
    std::cout << item << ' ';
  }

  return 0;
}
/*
This code example produces the following output:
1 15 25 30
*/

Ver también