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.