std::pointer_traits::to_address

From cppreference.com
< cpplrm; | memorylrm; | pointer traits
Dynamic memory management
Uninitialized storage
(C++17)
Garbage collection support
Miscellaneous
(C++20)
(C++11)
(C++11)
C Library
Low level memory management
Defined in header <memory>
static element_type* to_address(pointer p) noexcept;
(1) (since C++20)
(optional member of user-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.

Parameters

p - fancy pointer/pointer-like object

Return value

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

See also

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