Biblioteca C ++ - <set>
Introdução
UMA seté um container Associativo que contém um conjunto classificado de objetos únicos do tipo Chave. Cada elemento pode ocorrer apenas uma vez, portanto, duplicatas não são permitidas.
Existem quatro tipos de contêineres associativos: conjunto, multiset, mapa e multimapa.
O valor dos elementos em um conjunto não pode ser modificado uma vez no container, ou seja, os elementos são sempre constantes. Mas eles podem ser inseridos ou removidos do recipiente.
Os contêineres set são geralmente mais lentos do que os contêineres unordered_set no acesso a elementos individuais por sua chave, mas permitem a iteração direta em subconjuntos com base em sua ordem.
Definição
Abaixo está a definição de std :: set from <set> header file
template <
class Key,
class Compare = std::less<Key>,
class Allocator = std::allocator<Key>
> class set;
Parâmetros
Key - Tipo de elemento contido.
A chave pode ser substituída por qualquer outro tipo de dados, incluindo o tipo definido pelo usuário.
Tipos de membros
Os seguintes tipos de membro podem ser usados como parâmetros ou tipo de retorno por funções de membro.
Sr. Não. | Tipos de membros | Definição |
---|---|---|
1 | Tipo de chave | Chave |
2 | value_type | Chave |
3 | referência | Allocator :: referência value_type & |
4 | const_reference | Allocator :: const_reference const value_type & |
5 | ponteiro | Allocator :: ponteiro std :: allocator_traits <Allocator> :: ponteiro |
6 | const_pointer | Allocator :: const_pointer std :: allocator_traits <Allocator> :: const_pointer |
7 | iterador | BidirectionalIterator |
8 | const_iterator | BidirectionalIterator constante |
9 | reverse_iterator | std :: reverse_iterator <iterator> |
10 | const_reverse_iterator | std :: reverse_iterator <const_iterator> |
11 | Tamanho Tipo | Tipo inteiro não assinado (std :: size_t) |
12 | tipo de diferença | Tipo inteiro assinado (std :: ptrdiff_t) |
13 | key_compare | Comparar |
14 | value_compare | Comparar |
15 | alocator_type | Alocador |
Funções de <set>
Abaixo está uma lista de todos os métodos do cabeçalho <set>.
FUNÇÕES DE MEMBRO
DEFAULT MEMBER FUNCTIONS
Sr. Não. | Método e Descrição |
---|---|
1 | Construtor padrão Constrói o contêiner de conjunto. |
2 | Construtor de alcance Constrói o contêiner de conjunto com o conteúdo do intervalo. |
3 | Construtor de cópia Constrói o contêiner do conjunto com a cópia do outro conjunto. |
4 | Construtor de movimento Constrói o contêiner de conjunto com o conteúdo de outro conjunto usando a semântica de movimentação. |
5 | Construtor de lista de inicializadores Constrói o contêiner de conjunto com o conteúdo da lista do inicializador. |
6 | (destruidor) Destrói o contêiner definido. |
7 | operador = Atribui valores ao contêiner definido. |
ITERADORES
Sr. Não. | Método e Descrição |
---|---|
1 | set :: begin Retorna o iterador ao início. |
2 | set :: cbegin Retorna o iterador const para o início. |
3 | set :: end Retorna o iterador para terminar. |
4 | set :: cend Retorna o iterador const para terminar. |
5 | set :: rbegin Retorna o iterador reverso para o início reverso. |
6 | set :: crbegin Retorne const reverse iterator para inverter o início. |
7 | set :: rend Retorna o iterador reverso para a extremidade reversa. |
8 | set :: crend Retorna o iterador const reverse para o fim reverso. |
CAPACIDADE
Sr. Não. | Método e Descrição |
---|---|
1 | definir :: vazio Retorna quando o contêiner definido está vazio. |
2 | definir :: tamanho Retorna o número de elementos no contêiner definido. |
3 | set :: max_size Retorna o número máximo de elementos que o contêiner definido pode conter. |
MODIFICADORES
Sr. Não. | Método e Descrição |
---|---|
1 | definir :: limpar Remove todos os elementos do contêiner definido. |
2 | set :: insert Insere um novo elemento no contêiner definido. |
3 | set :: emplace Insere um novo elemento no conjunto, se for único. |
4 | set :: emplace_hint Insere novo elemento no conjunto, se for único, com uma dica na posição de inserção. |
5 | definir :: apagar Remove um único elemento ou um intervalo de elementos do contêiner definido. |
6 | set :: swap Troca o conteúdo do container pelo conteúdo de outro conjunto container do mesmo tipo. |
OLHO PARA CIMA
Sr. Não. | Método e Descrição |
---|---|
1 | set :: count Retorna o número de elementos com valor correspondente no contêiner de conjunto. |
2 | set :: find Pesquisa o conjunto de contêiner por valor e retorna um iterador para ele se encontrado, caso contrário, retorna um iterador para set :: end. |
3 | set :: lower_bound Retorna um iterador apontando para o primeiro elemento no contêiner de conjunto que não é considerado anterior ao valor. |
4 | set :: upper_bound Retorna um iterador apontando para o primeiro elemento no contêiner de conjunto que é considerado como perseguidor do valor. |
5 | set :: equal_range Retorna os limites de um intervalo que inclui todos os elementos no contêiner definido que são equivalentes a valor. |
OBSERVADORES
Sr. Não. | Método e Descrição |
---|---|
1 | set :: key_comp Retorna uma cópia do objeto de comparação usado pelo contêiner de conjunto. |
2 | set :: value_comp Retorna uma cópia do objeto de comparação usado pelo contêiner de conjunto. |
ALLOCATOR
Sr. Não. | Método e Descrição |
---|---|
1 | set :: get_allocator Retorna uma cópia do objeto alocador associado ao contêiner de conjunto. |