Namespaces
Variants
Views
Actions

std::pointer_traits<Ptr>::to_address

From cppreference.com
 
 
Dynamic memory management
Smart pointers
(C++11)
(C++11)
(C++11)
(until C++17)
(C++11)
(C++23)
Allocators
Memory resources
Uninitialized storage
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Garbage collection support
(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)
Miscellaneous
(C++20)
(C++11)
(C++11)
Low level memory management
 
std::pointer_traits
Member functions
pointer_traits::to_address
(C++20)(optional)
 
Defined in header <memory>
static element_type* to_address( pointer p ) noexcept;
(since C++20)
(optional member of program-defined specialization)

Constructs a raw pointer that references the same object as its pointer-like ("fancy pointer") argument.

This function, if defined, is the inverse of pointer_to, and exists as the customization point to be called by std::to_address.

[edit] Parameters

p - fancy pointer/pointer-like object

[edit] Return value

A raw pointer of the type element_type* that references the same memory location as the argument p.

[edit] See also

[static]
obtains a dereferenceable pointer to its argument
(public static member function) [edit]
obtains a raw pointer from a pointer-like type
(function template) [edit]