命名空间
变体
操作

std::movable

来自 cppreference.cn
< cpp‎ | concepts
定义于头文件 <concepts>
template< class T >

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

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

概念 movable<T> 规定 T 是一个可以移动的对象类型(即,它可以被移动构造、移动赋值,并且 T 类型的左值可以被交换)。

[编辑] 参考

  • C++23 标准 (ISO/IEC 14882:2024)
  • 18.6 对象概念 [concepts.object]
  • C++20 标准 (ISO/IEC 14882:2020)
  • 18.6 对象概念 [concepts.object]

[编辑] 参见

(C++20)
规定类型对象可以被复制、移动和交换
(concept) [编辑]