reference_wrapper 类

包装引用。

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
    };

备注

reference_wrapper<Ty> 是可赋值的副本可配置,并包含类型指向 Ty对象的指针。

当类型专用化,Ty 是 reference_wrapper<Ty> 派生自 std::unary_function<T1, Ret> (因而定义嵌套类型 result_type 作为 Ret 的同义词和嵌套类型 argument_type 作为 T1的同义词):

函数的函数类型或指针采用一个 T1 类型参数并返回 Ret的类型;或者

指向成员函数 Ret T::f() cv的指针,cv 表示成员函数的 CV 限定符;类型 T1 是 cv ; T*或者

从 unary_function<T1, Ret>派生的类。

当类型专用化,Ty 是 reference_wrapper<Ty> 派生自 std::binary_function<T1, T2, Ret> (因而定义嵌套类型 result_type 作为 Ret的同义词,嵌套类型 first_argument_type 作为 T1的同义词和嵌套类型 second_argument_type 作为 T2的同义词):

函数的函数类型或指针类型执行 T1 和 T2 的两参数和返回的类型;Ret或者

指向成员函数 Ret T::f(T2) cv的指针,cv 表示成员函数的 CV 限定符;类型 T1 是 cv ; T*或者

从 binary_function<T1, T2, Ret>派生的类。

构造函数

reference_wrapper::reference_wrapper

构造 reference_wrapper

Typedef

reference_wrapper::result_type

包装的引用弱结果类型。

reference_wrapper::type

包装的引用类型。

成员函数

reference_wrapper::get

获取换行的引用。

运算符

reference_wrapper::operator Ty&

指针具有包装的引用。

reference_wrapper::operator()

调用包装 (RCW) 的引用。

要求

标头: <起作用的>

命名空间: std

请参见

参考

cref 函数

ref 函数

其他资源

functional 成员