Namespaces
Variants

std::pointer_traits<Ptr>:: pointer_to

From cppreference.net
Memory management library
( exposition only* )
Allocators
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Memory resources
Uninitialized storage (until C++20)
( until C++20* )
( until C++20* )
( until C++20* )

Garbage collector support (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
std::pointer_traits
Member functions
pointer_traits::pointer_to
(C++11)
(C++20) (optional)
Definiert im Header <memory>
static pointer
pointer_to ( element_type & r ) ;
(1) (seit C++11)
(Mitglied der pointer_traits<Ptr> Spezialisierung)
(2)
static pointer
pointer_to ( element_type & r ) noexcept ;
(seit C++11)
(bis C++20)
(Mitglied der pointer_traits<T*> Spezialisierung)
static constexpr pointer
pointer_to ( element_type & r ) noexcept ;
(seit C++20)
(Mitglied der pointer_traits<T*> Spezialisierung)

Konstruiert einen dereferenzierbaren Zeiger oder zeigerähnlichen Objekt ( "fancy pointer" ) auf sein Argument.

1) Die Version dieser Funktion in der nicht-spezialisierten std::pointer_traits -Template ruft einfach Ptr :: pointer_to ( r ) auf, und wenn Ptr keine statische Memberfunktion pointer_to bereitstellt, ist die Instanziierung dieser Funktion ein Kompilierzeitfehler.
2) Die Version dieser Funktion in der Spezialisierung von std::pointer_traits für Zeigertypen gibt std:: addressof ( r ) zurück.

Inhaltsverzeichnis

Parameter

r - Referenz auf ein Objekt vom Typ element_type & , außer wenn element_type void ist, in welchem Fall der Typ von r nicht spezifiziert ist

Rückgabewert

Ein dereferenzierbarer Zeiger auf r , vom Typ pointer_traits <> :: pointer .

Exceptions

1) Nicht spezifiziert (typischerweise identisch mit Ptr :: pointer_to ).

Hinweise

Die Boost.Intrusive-Bibliotheksversion dieser Funktion gibt pointer ( std:: addressof ( r ) ) zurück, falls Ptr :: pointer_to nicht existiert.

Siehe auch

(C++11)
ermittelt die tatsächliche Adresse eines Objekts, selbst wenn der & Operator überladen ist
(Funktions-Template)
(until C++20)
ermittelt die Adresse eines Objekts, selbst wenn operator & überladen ist
(öffentliche Mitgliedsfunktion von std::allocator<T> )
[static] (C++20) (optional)
ermittelt einen Rohzeiger aus einem Fancy Pointer (Umkehrung von pointer_to )
(öffentliche statische Mitgliedsfunktion)
(C++20)
ermittelt einen Rohzeiger aus einem zeigerähnlichen Typ
(Funktions-Template)