Namespaces
Variants

std:: movable

From cppreference.net
Défini dans l'en-tête <concepts>
template < class T >

concept movable =
std:: is_object_v < T > &&
std:: move_constructible < T > &&
std:: assignable_from < T & , T > &&

std:: swappable < T > ;
(depuis C++20)

Le concept movable<T> spécifie que T est un type d'objet qui peut être déplacé (c'est-à-dire qu'il peut être construit par déplacement, assigné par déplacement, et que les lvalues de type T peuvent être échangées).

Références

  • Norme C++23 (ISO/CEI 14882:2024) :
  • 18.6 Concepts d'objet [concepts.object]
  • Norme C++20 (ISO/CEI 14882:2020) :
  • 18.6 Concepts d'objet [concepts.object]

Voir aussi

(C++20)
spécifie qu'un objet d'un type peut être copié, déplacé et échangé
(concept)