◐ Shell
clean mode source ↗

std::binary_negate - cppreference.com

Da cppreference.com.

Questa pagina è stata tradotta in modo automatico dalla versione in ineglese della wiki usando Google Translate.

La traduzione potrebbe contenere errori e termini strani. Muovi il puntatore sopra al testo per vedere la versione originale. Puoi aiutarci a correggere gli gli errori. Per ulteriori istruzioni clicca qui.

Click here for the English version of this page

<metanoindex/>

<tbody> </tbody>

Elemento definito nell'header

<functional>

template< class Predicate > struct binary_negate : public std::binary_function< Predicate::first_argument_type, Predicate::second_argument_type, bool >;

(fino al c++11)

template< class Predicate > struct binary_negate;

(dal C++11)

binary_negate è un oggetto funzione wrapper restituisce il complemento del predicato binario che detiene.

Original:

binary_negate is a wrapper function object returning the complement of the binary predicate it holds.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Il tipo di predicato binario necessario definire due tipi di membri, e first_argument_type second_argument_type, che sono convertibili per i tipi di parametro il predicato di. Gli oggetti ottenuti dalla funzione std::owner_less, std::ref, std::cref, std::plus, std::minus, std::multiplies, std::divides, std::modulus, std::equal_to, std::not_equal_to, std::greater, std::less, std::greater_equal, std::less_equal, std::logical_not, std::logical_or, std::bit_and, std::bit_or, std::bit_xor, std::mem_fn, std::map::value_comp, std::multimap::value_comp, std::function , o da una chiamata di avere std::not2 questi tipi definiti, come sono oggetti funzionali derivati ​​dalla std::binary_function deprecato.

Original:

The binary predicate type must define two member types, first_argument_type and second_argument_type, that are convertible to the predicate's parameter types. The function objects obtained from std::owner_less, std::ref, std::cref, std::plus, std::minus, std::multiplies, std::divides, std::modulus, std::equal_to, std::not_equal_to, std::greater, std::less, std::greater_equal, std::less_equal, std::logical_not, std::logical_or, std::bit_and, std::bit_or, std::bit_xor, std::mem_fn, std::map::value_comp, std::multimap::value_comp, std::function, or from a call to std::not2 have these types defined, as are function objects derived from the deprecated std::binary_function.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

binary_negate oggetti sono facilmente costruiti con funzione di supporto std::not2.

Original:

binary_negate objects are easily constructed with helper function std::not2.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Membri tipi

Tipo

Original:

Type

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Definition
first_argument_type Predicate::first_argument_type
second_argument_type Predicate::second_argument_type
result_type bool

Membri funzioni

constructs a new binary_negate object with the supplied predicate
(metodo pubblico)

restituisce il complemento logico del risultato di una chiamata al predicato memorizzato

Original:

returns the logical complement of the result of a call to the stored predicate

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.


(metodo pubblico)

std :: binary_negate ::

Original:

std::binary_negate::

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

binary_negate

<tbody> </tbody>

explicit binary_negate( Predicate const& pred );

Constructs a binary_negate function object with the stored predicate pred.

Parameters

pred -

predicato funzione dell'oggetto

Original:

predicate function object

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

std :: binary_negate ::

Original:

std::binary_negate::

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

operator()

<tbody> </tbody>

bool operator()( first_argument_type const& x, second_argument_type const& y ) const;

Returns the logical complement of the result of calling pred(x, y).

Parameters

x -

primo argomento di passare attraverso predicato

Original:

first argument to pass through to predicate

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

y -

Il secondo argomento di passare attraverso predicato

Original:

second argument to pass through to predicate

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Return value

The logical complement of the result of calling pred(x, y).

Esempio

#include <algorithm>
#include <functional>
#include <iostream>
#include <vector>

struct same : std::binary_function<int, int, bool>
{
    bool operator()(int a, int b) const { return a == b; }
};

int main()
{
    std::vector<int> v1;
    std::vector<int> v2;
    for (int i = 0; i < 10; ++i) v1.push_back(i);
    for (int i = 0; i < 10; ++i) v2.push_back(10 - i);
    
    std::vector<bool> v3(v1.size());
    
    std::binary_negate<same> not_same((same()));
    
    std::transform(v1.begin(), v1.end(), v2.begin(), v3.begin(), not_same);
    
    /* C++11 solution:
        // Use std::function<bool (int, int)>
        std::function<bool (int, int)> not_same =
            [](int x, int y)->bool{ return !same()(x, y); };
        
        std::transform(v1.begin(), v1.end(), v2.begin(), v3.begin(), not_same);
    */
    
    std::cout.setf(std::ios_base::boolalpha);
    for (int i = 0; i < 10; ++i)
        std::cout << v1[i] << ' ' << v2[i] << ' ' << v3[i] << '\n';
}

Output:

0 10 true
1 9 true
2 8 true
3 7 true
4 6 true
5 5 false
6 4 true
7 3 true
8 2 true
9 1 true

Vedi anche

(deprecato)

adattatore compatibile con la funzione di classe di base binaria

Original:

adaptor-compatible binary function base class

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.


(classe template) [modifica]

(C++11)

avvolge oggetto invocabile di qualsiasi tipo con la firma specificato chiamata di funzione

Original:

wraps callable object of any type with specified function call signature

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.


(classe template) [modifica]

costruisce oggetto personalizzato std::binary_negate

Original:

constructs custom std::binary_negate object

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.


(funzione di modello) [modifica]

(deprecato)

crea un adattatore compatibile con wrapper di oggetto funzione da un puntatore a funzione

Original:

creates an adaptor-compatible function object wrapper from a pointer to function

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.


(funzione di modello) [modifica]

funzione oggetto wrapper restituisce il complemento del predicato unario che detiene

Original:

wrapper function object returning the complement of the unary predicate it holds

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.


(classe template) [modifica]