System::Collections::Generic::List clase

List class

List forward declaration.

template<typename T>class List : public virtual System::Object,
                                 public System::Collections::Generic::IList<T>
ParámetroDescripción
TTipo de elemento.

Nested classes

Métodos

MétodoDescripción
_add_range(std::initializer_list<T>)Específico de C++.
Add(const T&) overrideAgrega un elemento al final de la lista.
AddInitializer(int, const T *)Añade elementos a la lista; se usa al traducir inicializadores.
AddRange(IEnumerablePtr)Añade todos los elementos de la colección (o de sí misma) al final de la lista actual.
AsReadOnly()Obtiene una referencia de solo lectura a esta colección.
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.
BinarySearch(const T&) constBusca un elemento en una lista ordenada.
BinarySearch(const T&, const SharedPtr<System::Collections::Generic::IComparer<T>>&) constBusca un elemento en una lista ordenada.
BinarySearch(int, int, const T&, const SharedPtr<System::Collections::Generic::IComparer<T>>&) constBusca un elemento en una lista ordenada.
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.
Contains(const T&) const overrideComprueba si el elemento está presente en la lista.
ConvertAll(Converter<T, OutputType>)Crea una lista de elementos convertidos a un tipo diferente.
CopyTo(System::ArrayPtr<T>, int) overrideCopia los elementos de la lista en los elementos existentes del arreglo.
CopyTo(const System::ArrayPtr<T>&)Copia todos los elementos en los elementos existentes del arreglo.
CopyTo(int, const System::ArrayPtr<T>&, int, int)Copia los elementos a partir del índice especificado 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.
data()Función de acceso a la estructura de datos subyacente.
data() constFunción de acceso a la estructura de datos subyacente.
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.
Exists(System::Predicate<T>)Comprueba si existe un elemento que cumpla un predicado específico en la lista.
Find(System::Predicate<T>)Busca un elemento que cumpla un predicado específico.
FindAll(System::Predicate<T>)Busca elementos que cumplan un predicado específico.
FindIndex(System::Predicate<T>)Busca un elemento que cumpla un predicado específico.
FindIndex(int, System::Predicate<T>)Busca un elemento que cumpla un predicado específico.
FindIndex(int, int, System::Predicate<T>)Busca un elemento que cumpla un predicado específico.
FindLast(System::Predicate<T>)Busca el último elemento que cumpla un predicado específico.
ForEach(System::Action<T>)Aplica una acción a todos los elementos de la lista.
get_Capacity() constObtiene la capacidad actual de la lista.
get_Count() const overrideObtiene el número de elementos en la lista actual.
GetEnumerator() overrideObtiene el enumerador para iterar a través de los elementos de la lista.
GetRange(int, int)Crea una porción de la lista.
idx_get(int) const overrideObtiene el elemento en una posición específica.
idx_set(int, T) overrideEstablece el elemento en una posición específica.
IndexOf(const T&) const overrideObtiene el primer índice del elemento específico.
IndexOf(const T&, int) constBusca un elemento específico en la lista.
Insert(int, const T&) overrideInserta el elemento en la posición especificada.
InsertRange(int, IEnumerablePtr)Inserta un rango de datos en una posición específica.
LastIndexOf(const T&) constBusca el objeto especificado y devuelve el índice basado en cero de la última aparición dentro de toda la lista.
LastIndexOf(const T&, int32_t) constBusca el objeto especificado y devuelve el índice basado en cero de la última aparición dentro del rango de elementos en la List que se extiende desde el primer elemento hasta el índice especificado.
LastIndexOf(const T&, int32_t, int32_t) constBusca el objeto especificado y devuelve el índice basado en cero de la última aparición dentro del rango de elementos en la List que contiene el número especificado de elementos y termina en el índice especificado.
List()Crea una lista vacía.
List(int)Crea una lista con capacidad predefinida.
List(IEnumerablePtr)Constructor de copia.
operator[](int)Función de acceso.
operator[](int) constFunción de acceso.
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 instancia del elemento específico de la lista.
RemoveAll(Predicate<T>)Elimina todos los elementos que coinciden con un predicado específico.
RemoveAt(int) overrideElimina el elemento en la posición especificada.
RemoveRange(int, int)Elimina una porción 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.
Reverse()Invierte el orden de los elementos de la lista completa.
Reverse(int, int)Invierte el orden de los elementos de la porción de la lista.
set_Capacity(int)Establece la capacidad de la lista.
Sort(const SharedPtr<System::Collections::Generic::IComparer<T>>&)Ordena los elementos en la lista.
Sort()Ordena los elementos en la lista usando el comparador predeterminado.
Sort(int, int, SharedPtr<System::Collections::Generic::IComparer<T>>)Ordena los elementos en la porción de la lista.
Sort(Comparison<T>, bool)Ordena los elementos en la lista.
ToArray() constConvierte la lista a un arreglo.
TrimExcess()Ajusta la capacidad de la lista para que coincida con su tamaño.
TrueForAll(System::Predicate<T>)Determina si cada elemento de la colección coincide con las condiciones definidas por el predicado especificado.
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
BaseTypeTipo de interfaz.
const_iteratorTipo de iterador constante.
const_reverse_iteratorTipo de iterador inverso constante.
IEnumerablePtrContenedor que contiene elementos del mismo tipo que mantenemos.
IEnumeratorPtrTipo Enumerator.
iteratorTipo de iterador.
reverse_iteratorTipo de iterador inverso.
ValueTypeEste tipo.
vector_tInformación RTTI.

Observaciones

List - wrapper around std::vector to be used in translated code. Requires operator == to be impemented for element type. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

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

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

int main()
{
  // Crea la primera lista.
  auto list1 = MakeObject<List<int>>();

  // Llena la primera lista.
  list1->Add(3);
  list1->Add(1);
  list1->Add(-5);
  list1->Add(8);

  // Ordena la primera lista.
  // Los elementos de la primera lista serán: {-5, 1, 3, 8}
  list1->Sort();

  // Elimina el elemento en el índice 2.
  // Los elementos de la primera lista serán: {-5, 1, 8}
  list1->RemoveAt(2);

  // Inserta el elemento en el índice 1.
  // Los elementos de la primera lista serán: {-5, 15, 1, 8}
  list1->Insert(1, 15);

  // Crea la segunda lista.
  auto list2 = MakeObject<List<int>>();

  // Llena la segunda lista.
  list2->Add(10);
  list2->Add(20);
  list2->Add(30);

  // Añade los elementos de la segunda lista a la primera.
  list1->AddRange(list2);

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

  return 0;
}
/*
This code example produces the following output:
-5 15 1 8 10 20 30
*/

Ver también