forward_list Class
Descreve um objeto que controla uma seqüência de comprimento variando de elementos.A seqüência é armazenada como uma lista vinculada singularmente de nós, cada um contendo um membro do tipo Type.
template<class Type, class Allocator = allocator<Type> >
class forward_list {
public:
typedef Allocator allocator_type;
typedef typename Allocator::pointer pointer;
typedef typename Allocator::const_pointer
const_pointer;
typedef typename Allocator::reference reference;
typedef typename Allocator::const_reference const_reference;
typedef typename Allocator::value_type value_type;
typedef typename Allocator::size_type size_type;
typedef typename Allocator::difference_type difference_type;
typedef T0 iterator;
typedef T1 const_iterator;
forward_list();
explicit forward_list(const Allocator& _Alloc);
explicit forward_list(size_type _Count);
forward_list(
size_type _Count,
const Type& _Val
);
forward_list(
size_type _Count,
const Type& _Val,
const Allocator& _Alloc
);
forward_list(const forward_list& _Right);
template<class InputIterator>
forward_list (
InputIterator _First,
InputIterator _Last
);
template<class InputIterator>
forward_list (
InputIterator _First,
InputIterator _Last,
const Allocator& _Alloc
);
forward_list (initializer_list<Type> _Init)
forward_list (
initializer_list<Type> _Init,
const Allocator& _Alloc
);
forward_list (forward_list&& _Right);
~forward_list();
forward_list& operator= (const forward_list& _Right);
forward_list& operator= (forward_list&& _Right);
iterator before_begin ();
const_iterator before_begin () const;
iterator begin ();
const_iterator begin () const;
iterator end ();
const_iterator end () const;
const_iterator cbefore_begin () const;
const_iterator cbegin () const;
const_iterator cend () const;
void resize (size_type _Count);
void resize (
size_type _Count,
const Type& _Val
);
size_type max_size () const;
bool empty () const;
Alloc get_allocator () const;
reference front ();
const_reference front () const;
void push_front (const Type& _Val);
void push_front (Type&& _Val);
template<class _Type>
void emplace_front(_Type&& _Val);
void pop_front ();
template<class InputIterator>
void assign (
InputIterator _First,
InputIterator _Last
);
void assign (
size_type _Count,
const Type& _Val
);
iterator insert_after (
const_iterator _Pos,
const Type& _Val
);
void insert_after (
const_iterator _Pos,
size_type _Count,
const Type& _Val
);
template<class InputIterator >
void insert_after (
const_iterator _Pos,
InputIterator _First,
InputIterator _Last
);
void insert_after (
const iterator _Pos,
initializer_list<Type> _Init
)
iterator insert_after (
const_iterator _Pos,
Type&& _Val
);
template<class Type>
iterator emplace_after(const_iterator _Where, Type&& _Val);
iterator erase_after (const_iterator _Pos);
iterator erase_after (
const_iterator _First,
const_iterator _Last
);
void clear ();
void swap (forward_list& _Right);
void splice_after (
const_iterator _Pos,
forward_list& _List
);
void splice_after (
const_iterator _Pos,
forward_list& _List,
iterator _First
);
void splice_after (
const_iterator _Pos,
forward_list& _List,
iterator _First,
iterator _Last);
void remove (const Type& _Val);
template<class Predicate>
void remove_if (Predicate _Pred);
void unique ();
template<class BinaryPredicate>
void unique (BinaryPredicate _Comp);
void merge (forward_list& _List);
template<class BinaryPredicate>
void merge (
forward_list& _List,
BinaryPredicate _Comp
);
void sort ();
template<class BinaryPredicate>
void sort (BinaryPredicate _Comp);
void reverse ();
};
Parâmetros
Parâmetro |
Descrição |
---|---|
Type |
O tipo de dados do elemento para ser armazenado na forward_list. |
_Alloc |
O objeto alocador armazenados que encapsula os detalhes sobre a forward_list alocação e desalocação de memória.Este parâmetro é opcional.O valor padrão é alocador <Type>. |
_Count |
O número de elementos em um forward_list. |
_Val |
O elemento para adicionar o forward_list. |
_Right |
A lista para incorporar o forward_list. |
_Pos |
O iterador indicando um local de forward_list. |
_First |
O iterador indicando o local de início de um intervalo de elementos de forward_list. |
_Last |
O iterador indicando o local final de um intervalo de elementos de forward_list. |
_Init |
A lista do inicializador |
_List |
Forward_list para mesclar, unir ou atribuir de. |
_Comp |
A função de comparação. |
Comentários
A forward_list objeto aloca e libera o armazenamento para a seqüência que ele controla por meio de um objeto armazenado da classe Allocator baseado em allocator Class (conhecido como std::allocator).Para mais informações, consulte Allocators.Um objeto alocador deve ter a mesma interface externa como um objeto de classe de modelo allocator.
Observação |
---|
O objeto de alocador armazenado não é copiado quando o objeto de contêiner é atribuído. |
Iteradores, referências e ponteiros podem se tornar inválidas quando elementos de sua seqüência controlada são apagados por meio de forward_list.Inserções e partes executadas na seqüência controlada por meio de forward_list invalida iteradores.
Adições a seqüência controlada podem ocorrer por chamadas para forward_list::insert_after, que é a única função de membro chama o construtor Type(const _Type&).forward_listtambém pode ser chamada mover construtores.Se uma expressão como essa lança uma exceção, o objeto de contêiner não insere nenhum novos elementos e Relança a exceção.Assim, um objeto de classe de modelo forward_list é deixado em um estado conhecido quando essas exceções ocorrem.
Construtores
Constrói um objeto do tipo forward_list. |
Typedefs
Um tipo que representa a classe de alocador de um objeto de lista de encaminhamento. |
|
Um tipo que fornece um iterador constante para a lista de encaminhamento. |
|
Um tipo que fornece um ponteiro para um const elemento em uma lista de encaminhamento. |
|
Um tipo que fornece uma referência constante a um elemento na lista de encaminhamento. |
|
Um tipo inteiro assinado que pode ser usado para representar o número de elementos de uma lista de encaminhamento em um intervalo entre elementos apontada por iteradores. |
|
Um tipo que fornece um iterador para a lista de encaminhamento. |
|
Um tipo que fornece um ponteiro para um elemento na lista de encaminhamento. |
|
Um tipo que fornece uma referência a um elemento na lista de encaminhamento. |
|
Um tipo que representa a distância não assinada entre dois elementos. |
|
Um tipo que representa o tipo de elemento armazenado em uma lista de encaminhamento. |
Funções de membro
Apaga os elementos de uma lista de encaminhamento e copia um novo conjunto de elementos de uma lista de encaminhamento de destino. |
|
Retorna um iterador endereçamento posição antes do primeiro elemento em uma lista de encaminhamento. |
|
Retorna um iterador endereçamento do primeiro elemento em uma lista de encaminhamento. |
|
Retorna um iterador const endereçamento posição antes do primeiro elemento em uma lista de encaminhamento. |
|
Retorna um iterador const endereçamento do primeiro elemento em uma lista de encaminhamento. |
|
Retorna um iterador const que aborda o local subseqüente do último elemento em uma lista de encaminhamento. |
|
Apaga todos os elementos de uma lista de encaminhamento. |
|
Mover constrói um novo elemento após uma posição especificada. |
|
Adiciona um elemento construído no local para o início da lista. |
|
Testa se uma lista de encaminhamento está vazia. |
|
Retorna um iterador que aborda o local subseqüente do último elemento em uma lista de encaminhamento. |
|
Remove os elementos da lista de encaminhamento após uma posição especificada. |
|
Retorna uma referência ao primeiro elemento em uma lista de encaminhamento. |
|
Retorna uma cópia do objeto alocador usado para construir uma lista de encaminhamento. |
|
Adiciona elementos à lista direta após uma posição especificada. |
|
Retorna o comprimento máximo de uma lista de encaminhamento. |
|
Remove os elementos da lista de argumento, insere a lista de encaminhamento de destino e ordena o conjunto novo, combinado de elementos em ordem crescente ou em alguma ordem especificada. |
|
Exclui o elemento no início de uma lista de encaminhamento. |
|
Adiciona um elemento ao início de uma lista de encaminhamento. |
|
Apaga os elementos em uma lista de encaminhamento que corresponde ao valor especificado. |
|
Apaga os elementos de uma lista de encaminhamento para o qual um predicado especificado for satisfeito. |
|
Especifica um novo tamanho de uma lista de encaminhamento. |
|
Inverte a ordem na qual os elementos ocorrem em uma lista de encaminhamento. |
|
Organiza os elementos em ordem crescente ou com uma ordem especificada por um predicado. |
|
Restitches links entre os nós. |
|
Troca dos elementos de duas listas de encaminhamento. |
|
Remove elementos adjacentes que passar um teste especificada. |
Operadores
Substitui os elementos da lista de encaminhamento com uma cópia de outra lista de encaminhamento. |
Requisitos
Cabeçalho: <forward_list>
Namespace: std