reference_wrapper Class
自動換行的參考。
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
};
備註
A reference_wrapper<Ty>開放式和可以指派,是複本,而且指標所指型別的物件會保存Ty。
特製化reference_wrapper<Ty>衍生自std::unary_function<T1, Ret> (因此定義巢狀型別result_type的同義字為Ret和巢狀型別argument_type的同義資料表為T1) 唯若型別Ty是:
函式型別或函式採用一個型別的引數的型別指標T1 ,並傳回Ret。 或
成員函式指標Ret T::f() cv,其中cv代表成員函式的 cv 限定詞。 the type T1 is cvT*; 或
類別型別是衍生自unary_function<T1, Ret>。
特製化reference_wrapper<Ty>衍生自std::binary_function<T1, T2, Ret> (因此定義巢狀型別result_type的同義資料表為Ret、 巢狀型別first_argument_type的同義資料表為T1,和巢狀型別second_argument_type的同義資料表為T2) 唯若型別Ty是:
函式型別或函式型別的採取兩個引數的型別指標T1和T2 ,並將傳回Ret。 或
成員函式指標Ret T::f(T2) cv,其中cv代表成員函式的 cv 限定詞。 the type T1 is cvT*; 或
類別型別是衍生自binary_function<T1, T2, Ret>。
建構函式
建構 reference_wrapper。 |
Typedef
包裝參考弱式的結果型別。 |
|
換行的參考型別。 |
成員函式
取得包裝的參考。 |
運算子
取得包裝參考的指標。 |
|
呼叫的包裝的參考。 |
需求
標頭: <functional>
Namespace: 標準