Condividi tramite


Classe reference_wrapper

Esegue il wrapping di un riferimento.

template<class Ty>
    class reference_wrapper
    : public unary_function<T1, Ret>        // see below
    : public binary_function<T1, T2, Ret>   // see below
    {
public:
    typedef Ty type;
    typedef T0 result_type;                 // see below

    reference_wrapper(Ty&);

    Ty& get() const;
    operator Ty&() const;
    template<class T1, class T2, ..., class TN>
        typename result_of<T(T1, T2, ..., TN)>::type
        operator()(T1&, T2&, ..., TN&);

private:
    Ty *ptr; // exposition only
    };

Note

È reference_wrapper<Ty> copia costruttibile e assegnabile e contiene un puntatore a un oggetto di tipo Ty.

Una specializzazione reference_wrapper<Ty> è derivata da std::unary_function<T1, Ret> ovvero di definizione del tipo annidato result_type come un sinonimo di Ret e il tipo annidato argument_type come un sinonimo di T1) solo se il tipo Ty è:

un tipo o un puntatore a funzione di tipo funzione che accetta un argomento di tipo T1 e restituisce Ret; o

un puntatore a una funzione membro Ret T::f() cv, dove cv rappresenta i cv- qualificatori la funzione membro; il tipo T1 è cvT*; o

tipo di classe derivato da unary_function<T1, Ret>.

Una specializzazione reference_wrapper<Ty> è derivata da std::binary_function<T1, T2, Ret> ovvero di definizione del tipo annidato result_type come un sinonimo di Ret, tipo annidato first_argument_type come un sinonimo di T1 e il tipo annidato second_argument_type come un sinonimo di T2) solo se il tipo Ty è:

un tipo o un puntatore a funzione di tipo funzione che accetta due argomenti dei tipi T1 e T2 e restituisce Ret; o

un puntatore a una funzione membro Ret T::f(T2) cv, dove cv rappresenta i cv- qualificatori la funzione membro; il tipo T1 è cvT*; o

tipo di classe derivato da binary_function<T1, T2, Ret>.

Costruttori

reference_wrapper::reference_wrapper

Costruisce un oggetto reference_wrapper.

Definizioni typedef

reference_wrapper::result_type

Il tipo di risultato di un riferimento debole di cui è stato eseguito il wrapping.

reference_wrapper::type

Il tipo del riferimento di cui è stato eseguito il wrapping.

Funzioni del membro

reference_wrapper::get

Ottiene la linea di cui è stato eseguito il wrapping.

Operatori

reference_wrapper::operator Ty&

Ottiene un puntatore al riferimento di cui è stato eseguito il wrapping.

reference_wrapper::operator()

Chiama il riferimento di cui è stato eseguito il wrapping.

Requisiti

Intestazione: <funzionale>

Spazio dei nomi: std

Vedere anche

Riferimenti

Funzione cref

Funzione ref

Altre risorse

<funzionale> membri