No capítulo anterior vimos conceitos de std::sort e std::greater . Vamos trabalhar aquele exemplo do std::sort
que usamos sem o terceiro parâmetro com std::less_equal
para obtermos um array em ordem crescente.
std::less_equals
é uma classe de objeto de função usada para realizar comparações. É definido como uma classe de objeto de função para comparação inferior a igualdade que retorna um valor booleano dependendo da condição.Ou seja, basta usar o mesmo exemplo para ordenarmos de forma crescente:
Exemplo:
Saída:
2 4 8 9 11 12 13 17 52 79 89
Simples de entender, né?! Ou seja coloca em ordem do menor ou igual
std::variant
e std::visit
O std::variant
é como o próprio nome supõe, o tipo pode variar, não é igual à usar auto
(precisa inicializar e não é possível alterar o tipo). Ou seja, com std::variant
você pode dizer que a variável var
poder ser: int
, std::string
, char *
,…
Já o std::visit
é a forma que vamos manipular esse dado entregue pela std::variant
, ou seja, quando você cria uma função ela tem um tipo de retorno, logo, o std::visit
quase a mesma ideia diretamente ligada ao polimosfismo. Ela é geralmente usada em conjunto com expressões lambda .
Exemplo: Criar uma variável e passar o valor dela para uma função, nesse caso: lambda.
Algumas coisas para analisar no código acima:
std::variant
;var
: int
, std::string
e char *
;std::visit
pode ser opcional: ora usei: std::visit
e outrora somente: visit
;
Bom, para uma análise rápida e de fácil compreensão é isso! Caso queira se aprofundar ainda mais sugiro esses links: std::less_equal, std::variant e std::visit .
Por hoje é só, são pequenas doses diárias que farão sempre nos manter antenado com o C++ !