Files
cppdraft_translate/cppdraft/concept/copyconstructible.md
2025-10-25 03:02:53 +03:00

2.0 KiB
Raw Permalink Blame History

[concept.copyconstructible]

18 Concepts library [concepts]

18.4.14 Concept copy_constructible [concept.copyconstructible]

🔗

template<class T> concept [copy_constructible](#concept:copy_constructible "18.4.14Concept copy_­constructible[concept.copyconstructible]") = [move_constructible](concept.moveconstructible#concept:move_constructible "18.4.13Concept move_­constructible[concept.moveconstructible]")<T> && [constructible_from](concept.constructible#concept:constructible_from "18.4.11Concept constructible_­from[concept.constructible]")<T, T&> && [convertible_to](concept.convertible#concept:convertible_to "18.4.4Concept convertible_­to[concept.convertible]")<T&, T> && [constructible_from](concept.constructible#concept:constructible_from "18.4.11Concept constructible_­from[concept.constructible]")<T, const T&> && [convertible_to](concept.convertible#concept:convertible_to "18.4.4Concept convertible_­to[concept.convertible]")<const T&, T> && [constructible_from](concept.constructible#concept:constructible_from "18.4.11Concept constructible_­from[concept.constructible]")<T, const T> && [convertible_to](concept.convertible#concept:convertible_to "18.4.4Concept convertible_­to[concept.convertible]")<const T, T>;

1

#

If T is an object type, then let v be an lvalue of typeT or const T or an rvalue of type const T.

T models copy_constructible only if