# std::copyable

From cppreference.com
< cpp‎ | concepts

Defined in header `<concepts>` |  |
template <class T> concept copyable = std::copy_constructible<T> && std::movable<T> && std::assignable_from<T&, T&> && std::assignable_from<T&, const T&> && std::assignable_from<T&, const T>; |  | (since C++20)

The concept `copyable<T>` specifies that `T` is a `movable` object type that can also copied (that is, it supports copy construction and copy assignment).

### See also

movable (C++20) | specifies that an object of a type can be moved and swapped (concept)

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/concepts/copyable&oldid=142082"