La plantilla std::is_literal_type de C++ STL está presente en el archivo de encabezado <type_traits> . La plantilla std::is_literal_type de C++ STL se utiliza para comprobar si la T es de tipo literal o no. Devuelve el valor booleano verdadero si T es de tipo literal, de lo contrario devuelve falso.
Archivo de cabecera:
#include<type_traits>
Modelo:
template< class T > struct is_literal_type;
Sintaxis:
std::is_literal_type::value
Parámetro: la plantilla std::is_literal_type acepta un solo parámetro T (clase de rasgo) para comprobar si T es de tipo literal o no.
Valor devuelto: La plantilla std::is_literal_type devuelve una variable booleana como se muestra a continuación:
- Verdadero: si el tipo T es un tipo literal.
- Falso: si el tipo T no es un tipo literal.
A continuación se muestra el programa para demostrar std::is_literal_type: en C/C++:
Programa:
// C++ program to illustrate // std::is_literal_type #include <bits/stdc++.h> #include <type_traits> using namespace std; // Declare Classes class X { }; class Y { // Destructor ~Y() {} }; // Declare structures struct A { int m; }; struct B { virtual ~B(); }; // Driver Code int main() { cout << boolalpha; // Check if int is literal type? cout << "int: " << is_literal_type<int>::value << endl; // Check if class X is literal type? cout << "class X: " << is_literal_type<X>::value << endl; // Check if class Y is literal type? cout << "class Y: " << is_literal_type<Y>::value << endl; // Check if int* is literal type? cout << "int*: " << is_literal_type<int*>::value << endl; // Check if struct A is literal type? cout << "struct A: " << is_literal_type<A>::value << endl; // Check if struct B is literal type? cout << "struct B: " << is_literal_type<B>::value << endl; return 0; }
int: true class X: true class Y: false int*: true struct A: true struct B: false
Referencia: http://www.cplusplus.com/reference/type_traits/is_literal_type/
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