命名空间
变体
操作

std::movable (自 C++20 起)

来自 cppreference.com
< 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)
指定类型对象可以被复制、移动和交换
(概念) [编辑]