it]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_pod&action=edit)  
[ is_literal_type  ](/w/cpp/types/is_literal_type "cpp/types/is literal type") (C++11)  (deprecated in C++17)  (removed in C++20)  |  checks if a type is a literal type   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_literal_type&action=edit)  
[ has_unique_object_representations  ](/w/cpp/types/has_unique_object_representations "cpp/types/has unique object representations") (C++17)  |  checks if every bit in the type's object representation contributes to its value   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_has_unique_object_representations&action=edit)  
[ is_empty  ](/w/cpp/types/is_empty "cpp/types/is empty") (C++11)  |  checks if a type is a class (but not union) type and has no non-static data members   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_empty&action=edit)  
[ is_polymorphic  ](/w/cpp/types/is_polymorphic "cpp/types/is polymorphic") (C++11)  |  checks if a type is a polymorphic class type   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_polymorphic&action=edit)  
[ is_abstract  ](/w/cpp/types/is_abstract "cpp/types/is abstract") (C++11)  |  checks if a type is an abstract class type   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_abstract&action=edit)  
[ is_final  ](/w/cpp/types/is_final "cpp/types/is final") (C++14)  |  checks if a type is a final class type   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_final&action=edit)  
[ is_aggregate  ](/w/cpp/types/is_aggregate "cpp/types/is aggregate") (C++17)  |  checks if a type is an aggregate type   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_aggregate&action=edit)  
[ is_implicit_lifetime  ](/w/cpp/types/is_implicit_lifetime "cpp/types/is implicit lifetime") (C++23)  |  checks if a type is an implicit-lifetime type   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_implicit_lifetime&action=edit)  
[ is_signed  ](/w/cpp/types/is_signed "cpp/types/is signed") (C++11)  |  checks if a type is a signed arithmetic type   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_signed&action=edit)  
[ is_unsigned  ](/w/cpp/types/is_unsigned "cpp/types/is unsigned") (C++11)  |  checks if a type is an unsigned arithmetic type   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_unsigned&action=edit)  
[ is_bounded_array  ](/w/cpp/types/is_bounded_array "cpp/types/is bounded array") (C++20)  |  checks if a type is an array type of known bound   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_bounded_array&action=edit)  
[ is_unbounded_array  ](/w/cpp/types/is_unbounded_array "cpp/types/is unbounded array") (C++20)  |  checks if a type is an array type of unknown bound   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_unbounded_array&action=edit)  
[ is_scoped_enum  ](/w/cpp/types/is_scoped_enum "cpp/types/is scoped enum") (C++23)  |  checks if a type is a scoped enumeration type   
(class template)  [ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/types/dsc_is_scoped_enum&action=edit)  
  
#####  Supported operations  
  
---  
Defined in header ` [ <type_traits> ](/w/cpp/header/type_traits
"cpp/header/type traits") `  
[ is_constructible  is_trivially_constructible  is_nothrow_constructible  ](/w/cpp/types/is_constructible "cpp/types/is constructible") (C++11)