Descrição
É uma classe de objeto de função NOT lógica e uma classe de objeto de função unária cuja chamada retorna o resultado da operação lógica "não" em seu argumento (conforme retornado pelo operador!).
Declaração
A seguir está a declaração para std :: logical_not.
template <class T> struct logical_not;
C ++ 11
template <class T> struct logical_not;
Parâmetros
T - É um tipo de argumento e tipo de retorno da chamada funcional.
Valor de retorno
Nenhum
Exceções
noexcep - Não lança nenhuma exceção.
Exemplo
No exemplo a seguir, explica sobre std :: logical_not.
#include <iostream>
#include <functional>
#include <algorithm>
int main () {
bool values[] = {true,false};
bool result[2];
std::transform (values, values+2, result, std::logical_not<bool>());
std::cout << std::boolalpha << "Logical NOT Example as shown below:\n";
for (int i=0; i<2; i++)
std::cout << "NOT " << values[i] << " = " << result[i] << "\n";
return 0;
}
Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -
Logical NOT Example as shown below:
NOT true = false
NOT false = true