---
name: "std::copy_constructible"
section: "3cxx"
platform: "linux"
package: "libstdc++-12-doc"
version: "12.4.0-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/std::copy_constructible/3cxx"
---

# std::copy\_constructible(3cxx)

\[concept.copyconstructible\], concept copy\_constructible

## NAME

std::copy\_constructible - \[concept.copyconstructible\], concept copy\_constructible

## SYNOPSIS

`#include <concepts>`

## Concept definition

```
template<typename _Tp>
concept std::copy_constructible =  move_constructible<_Tp>
      && constructible_from<_Tp, _Tp&> && convertible_to<_Tp&, _Tp>
      && constructible_from<_Tp, const _Tp&> && convertible_to<const _Tp&, _Tp>
      && constructible_from<_Tp, const _Tp> && convertible_to<const _Tp, _Tp>
```

## Detailed Description

\[concept.copyconstructible\], concept copy\_constructible

## Author

Generated automatically by Doxygen for libstdc++ from the source code.
