classe 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
ParametroDescrizione
TTipo di valore contenuto.

Nested classes

Metodi

MetodoDescrizione
Add(const T&) overrideAggiunge element alla fine della lista.
AddAfter(const SharedPtr<LinkedListNode<T>>&, const T&)Aggiunge element dopo node della lista.
AddAfter(const SharedPtr<LinkedListNode<T>>&, const SharedPtr<LinkedListNode<T>>&)Aggiunge newNode dopo node della lista.
AddBefore(const SharedPtr<LinkedListNode<T>>&, const T&)Aggiunge element prima di node della lista.
AddBefore(const SharedPtr<LinkedListNode<T>>&, const SharedPtr<LinkedListNode<T>>&)Aggiunge newNode prima di node della lista.
AddFirst(const T&)Aggiunge element all’inizio della lista.
AddFirst(const SharedPtr<LinkedListNode<T>>&)Aggiunge newNode all’inizio della lista.
AddLast(const T&)Aggiunge element alla fine della lista.
AddLast(const SharedPtr<LinkedListNode<T>>&)Aggiunge newNode alla fine della lista.
begin()Ottiene l’iteratore al primo elemento della raccolta.
begin() constOttiene l’iteratore al primo elemento della collezione qualificata come const.
cbegin() constOttiene l’iteratore al primo elemento qualificato come const della collezione.
cend() constOttiene l’iteratore per un elemento qualificato const inesistente oltre la fine della collezione.
Clear() overrideElimina tutti gli elementi nella lista.
Contains(const T&) const overrideVerifica se element è presente nella lista.
CopyTo(ArrayPtr<T>, int) overrideCopia i dati del contenitore negli elementi dell’array esistente.
crbegin() constOttiene un iteratore inverso all’ultimo elemento qualificato const della raccolta (primo in ordine inverso).
crend() constOttiene un iteratore inverso per un elemento qualificato const non esistente prima dell’inizio della raccolta.
end()Ottiene l’iteratore per un elemento inesistente oltre la fine della collezione.
end() constOttiene l’iteratore per un elemento inesistente oltre la fine della collezione qualificata come const.
Find(const T&) constEsegue la ricerca in direzione forward di un element nella lista.
FindLast(const T&) constEsegue la ricerca in direzione reverse di un element nella lista.
get_Count() const overrideOttiene il numero di elementi nella lista.
get_First() constOttiene il puntatore al primo elemento nella lista.
get_Last() constOttiene il puntatore all’ultimo elemento nella lista.
GetEnumerator() overrideOttiene l’enumeratore per iterare attraverso l’attuale LinkedList.
LinkedList()Crea un LinkedList vuoto.
LinkedList(const SharedPtr<IEnumerable<T>>&)Costruttore di copia.
rbegin()Ottiene un iteratore inverso all’ultimo elemento della raccolta (primo in ordine inverso).
rbegin() constOttiene un iteratore inverso all’ultimo elemento della raccolta qualificata const (primo in ordine inverso).
Remove(const T&) overrideRimuove la prima occorrenza dell’element specificato dalla lista.
Remove(const SharedPtr<LinkedListNode<T>>&)Rimuove il nodo dalla lista.
RemoveFirst()Rimuove il primo nodo dalla lista.
RemoveLast()Rimuove l’ultimo nodo dalla lista.
rend()Ottiene un iteratore inverso per un elemento non esistente prima dell’inizio della raccolta.
rend() constOttiene un iteratore inverso per un elemento non esistente prima dell’inizio della raccolta qualificata const.
virtualizeBeginConstIterator() const overrideOttiene l’implementazione dell’iteratore const begin per il contenitore corrente.
virtualizeBeginIterator() overrideOttiene l’implementazione dell’iteratore begin per il contenitore corrente.
virtualizeEndConstIterator() const overrideOttiene l’implementazione dell’iteratore const end per il contenitore corrente.
virtualizeEndIterator() overrideOttiene l’implementazione dell’iteratore end per il contenitore corrente.

Typedefs

TypedefDescrizione
const_iteratorTipo di iteratore const.
const_reverse_iteratorTipo di iteratore inverso const.
iteratorTipo di iteratore.
list_tTipo di dato sottostante.
reverse_iteratorTipo di iteratore inverso.

Osservazioni

Contenitore di lista collegata. Implementa un wrapper su std::list. Gli oggetti di questa classe dovrebbero essere allocati solo usando la funzione System::MakeObject(). Non creare mai un’istanza di questo tipo sullo stack o usando l’operatore new, poiché ciò provocherà errori di runtime e/o fault di asserzione. Avvolgi sempre questa classe in un puntatore System::SmartPtr e usa questo puntatore per passarlo alle funzioni come argomento.

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

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

int main()
{
  // Crea un'istanza della classe LinkedList.
  auto list = MakeObject<LinkedList<int>>();

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

  // Stampa gli elementi della lista collegata.
  for (const auto item: list)
  {
    std::cout << item << ' ';
  }

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

Vedi anche