Namespaces
Variants

std::indirect<T, Allocator>:: operator->, std::indirect<T, Allocator>:: operator*

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)
constexpr const_pointer operator - > ( ) const noexcept ;
(1) (depuis C++26)
constexpr pointer operator - > ( ) noexcept ;
(2) (depuis C++26)
constexpr const T & operator * ( ) const & noexcept ;
(3) (depuis C++26)
constexpr T & operator * ( ) & noexcept ;
(4) (depuis C++26)
constexpr const T && operator * ( ) const && noexcept ;
(5) (depuis C++26)
constexpr T && operator * ( ) && noexcept ;
(6) (depuis C++26)

Accède à la valeur possédée.

1,2) Retourne un pointeur vers la valeur possédée.
3-6) Retourne une référence à la valeur possédée.

Si * this est sans valeur, le comportement est indéfini.

Valeur de retour

1,2) p
3,4) * p
5,6) std :: move ( * p  )

Notes

Cet opérateur ne vérifie pas si * this est sans valeur, les utilisateurs peuvent le faire manuellement en utilisant valueless_after_move() .

Exemple