名稱空間
變體
操作

std::pointer_traits<Ptr>::pointer_to

來自 cppreference.com
 
 
記憶體管理庫
(僅作說明*)
未初始化記憶體演算法
(C++17)
(C++17)
(C++17)
受約束的未初始化
記憶體演算法
C 庫

分配器
記憶體資源
垃圾回收支援
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
未初始化儲存
(直到 C++20*)
(直到 C++20*)
顯式生命週期管理
 
std::pointer_traits
成員函式
pointer_traits::pointer_to
(C++11)
 
定義於標頭檔案 <memory>
static pointer
pointer_to( element_type& r );
(1) (C++11 起)
(pointer_traits<Ptr> 特化成員)
(2)
static pointer
pointer_to( element_type& r ) noexcept;
(C++11 起)
(C++20 前)
(pointer_traits<T*> 特化成員)
static constexpr pointer
pointer_to( element_type& r ) noexcept;
(C++20 起)
(pointer_traits<T*> 特化成員)

構造一個可解引用指標或類似指標的物件(“花式指標”)指向其引數。

1) 非特化的 std::pointer_traits 模板中的此函式版本簡單地呼叫 Ptr::pointer_to(r),如果 Ptr 不提供靜態成員函式 pointer_to,則此函式的例項化會產生編譯時錯誤。
2) 針對指標型別的 std::pointer_traits 特化中的此函式版本返回 std::addressof(r)

目錄

[編輯] 引數

r - 指向 element_type& 型別物件的引用,除非 element_type 是 void,在這種情況下 r 的型別未指定。

[編輯] 返回值

指向 r 的可解引用指標,型別為 pointer_traits<>::pointer

[編輯] 異常

1) 未指定(通常與 Ptr::pointer_to 相同)。

[編輯] 注意

此函式的 Boost.Intrusive 庫版本如果 Ptr::pointer_to 不存在,則返回 pointer(std::addressof(r))

[編輯] 另請參閱

(C++11)
獲取物件的實際地址,即使 & 運算子被過載
(函式模板) [編輯]
(C++20 前)
獲取物件的地址,即使 operator& 被過載
(std::allocator<T> 的公共成員函式) [編輯]
[靜態] (C++20)(可選)
從花式指標獲取原始指標(pointer_to 的逆操作)
(公共靜態成員函式) [編輯]
從類指標型別獲取原始指標
(函式模板) [編輯]