reference_wrapper, classe
Inclut une référence.
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
};
Notes
reference_wrapper<Ty> est une copie construtible et assignable, et contient un pointeur qui indique un objet de type Ty.
Une spécialisation reference_wrapper<Ty> est dérivée d'std::unary_function<T1, Ret> (par conséquent la définition du type result_type imbriqué comme synonyme de Ret et le type argument_type imbriqué comme synonyme de T1) uniquement si le type Ty est :
un type ou un pointeur de fonction pour exécuter le type prend un argument de type T1 et retourne Ret; ou
pointeur vers une fonction membre Ret T::f() cv, où cv représente les cv- identificateurs de la fonction membre ; le type T1 est cvT*; ou
un type de classe dérivé d'unary_function<T1, Ret>.
Une spécialisation reference_wrapper<Ty> est dérivée d'std::binary_function<T1, T2, Ret> (par conséquent la définition du type result_type imbriqué comme synonyme de Ret, le type first_argument_type imbriqué comme synonyme de T1, puis tapez second_argument_type imbriqué comme synonyme de T2) uniquement si le type Ty est :
un type ou un pointeur de fonction pour exécuter le type prend deux arguments des types T1 et T2 et retourne Ret; ou
pointeur vers une fonction membre Ret T::f(T2) cv, où cv représente les cv- identificateurs de la fonction membre ; le type T1 est cvT*; ou
un type de classe dérivé d'binary_function<T1, T2, Ret>.
Constructeurs
Construit un reference_wrapper. |
Typedef
Type de résultat faible de la référence encapsulée. |
|
Le type de la référence encapsulée. |
Fonctions membres
Obtient la référence encapsulée. |
Opérateurs
Obtient un pointeur à la référence encapsulée. |
|
Appelle la référence encapsulée. |
Configuration requise
En-tête : <functional>
Espace de noms : std