La plantilla std::is_copy_construtible de C++ STL está presente en el archivo de encabezado <type_traits> . La plantilla std::is_copy_construtible de C++ STL se usa para verificar si la T es copiable o no. Devuelve el valor booleano verdadero si T es un tipo de copia construible; de lo contrario, devuelve falso.
Archivo de cabecera:
#include<type_traits>
Clase de plantilla:
template <class T> struct is_copy_constructible;
Sintaxis:
std::is_copy_constructible <int> ::value std::is_copy_constructible>class T> ::value
Parámetros: esta plantilla acepta un solo parámetro T (clase de rasgo) para verificar si T es una copia construible o no.
Valor devuelto: esta plantilla devuelve una variable booleana como se muestra a continuación:
- Verdadero: si el tipo T es una copia construible.
- Falso: si el tipo T no es una copia construible./li>
Los siguientes programas ilustran la plantilla std::is_copy_construtiblev en C/C++:
Programa:
// C++ program to illustrate // std::is_copy_constructible example #include <bits/stdc++.h> #include <type_traits> using namespace std; // Declare structures struct B { }; struct A { A& operator=(A&) = delete; }; // Driver Code int main() { cout << boolalpha; // Check that if char is copy // constructible or not cout << "char: " << is_copy_constructible<char>::value << endl; // Check that if int is copy // constructible or not cout << "int: " << is_copy_constructible<int>::value << endl; // Check that if int[2] is copy // constructible or not cout << "int[2]: " << is_copy_constructible<int[2]>::value << endl; // Check that if struct A is copy // constructible or not cout << "struct A: " << is_copy_constructible<A>::value << endl; // Check that if struct B is copy // constructible or not cout << "struct B: " << is_copy_constructible<B>::value << endl; return 0; }
char: true int: true int[2]: false struct A: true struct B: true
Referencia: http://www.cplusplus.com/reference/type_traits/is_copy_construtible/
Publicación traducida automáticamente
Artículo escrito por bansal_rtk_ y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA