42 lines
1.4 KiB
Markdown
42 lines
1.4 KiB
Markdown
[pointer.traits.functions]
|
||
|
||
# 20 Memory management library [[mem]](./#mem)
|
||
|
||
## 20.2 Memory [[memory]](memory#pointer.traits.functions)
|
||
|
||
### 20.2.3 Pointer traits [[pointer.traits]](pointer.traits#functions)
|
||
|
||
#### 20.2.3.3 Member functions [pointer.traits.functions]
|
||
|
||
[ð](#lib:pointer_to,pointer_traits)
|
||
|
||
`static pointer pointer_traits::pointer_to(see below r);
|
||
static constexpr pointer pointer_traits<T*>::pointer_to(see below r) noexcept;
|
||
`
|
||
|
||
[1](#1)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/memory.tex#L858)
|
||
|
||
*Mandates*: For the first member function,Ptr::pointer_to(r) is well-formed[.](#1.sentence-1)
|
||
|
||
[2](#2)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/memory.tex#L863)
|
||
|
||
*Preconditions*: For the first member function,Ptr::pointer_to(r) returns a pointer to r through which indirection is valid[.](#2.sentence-1)
|
||
|
||
[3](#3)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/memory.tex#L869)
|
||
|
||
*Returns*: The first member function returns Ptr::pointer_to(r)[.](#3.sentence-1)
|
||
|
||
The second member function returns addressof(r)[.](#3.sentence-2)
|
||
|
||
[4](#4)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/memory.tex#L874)
|
||
|
||
*Remarks*: If element_type is cv void, the type ofr is unspecified; otherwise, it is element_type&[.](#4.sentence-1)
|