std::is_integral template in C++
The std::is_integral template of C++ STL is used to check whether the given type is integral or not. It returns a boolean value showing the same.
Syntax:
template <class T> struct is_integral;
Template Parameter: This template accepts a single parameter T (Trait class) to check whether T is a integral type or not.
Return Value: This template returns a boolean value as shown below:
- true: if the type is a integral.
- false: if the type is a non-integral.
Below programs illustrate the std::is_integral template in C++:
Program 1::
// C++ program to illustrate // is_integral function #include <iostream> #include <type_traits> using namespace std; // main program int main() { cout << boolalpha; cout << "is_integral:" << endl; cout << "char: " << is_integral < char >::value << endl; cout << "int: " << is_integral < int >::value << endl; cout << "float: " << is_integral < float >::value << endl; return 0; } |
Output:
is_integral: char: true int: true float: false
Program 2::
// C++ program to illustrate // is_integral function #include <iostream> #include <type_traits> using namespace std; // main program int main() { cout << boolalpha; cout << "is_integral:" << endl; cout << "double: " << is_integral < double >::value << endl; cout << "bool: " << is_integral < bool >::value << endl; cout << "long int: " << is_integral < long int >::value << endl; return 0; } |
Output:
is_integral: double: false bool: true long int: true
Program 3::
// C++ program to illustrate // is_integral function #include <iostream> #include <type_traits> using namespace std; // main program int main() { cout << boolalpha; cout << "is_integral:" << endl; cout << "wchar_t: " << is_integral < wchar_t >::value << endl; cout << "long double: " << is_integral < long double >::value << endl; cout << "unsigned short int: " << is_integral <unsigned short int >::value << endl; return 0; } |
Output:
is_integral: wchar_t: true long double: false unsigned short int: true
Contact Us