Sdílet prostřednictvím


<type_traits>

Definuje šablon, které poskytují konstanty kompilace, které poskytují informace o vlastnostech jejich argumenty typu.

#include <type_traits>

Poznámky

Objekt predikátem typu je šablona, která přebírá dva argumenty typu.Když predikátem typu platí, je veřejně odvozena, přímo nebo nepřímo z true_type – Typedef.Když predikátem typu uchovává hodnotu false, je veřejně odvozena, přímo nebo nepřímo z false_type – Typedef.

Objekt typ modifikátoru je šablona, která přebírá jeden nebo více argumentů šablony a má jednoho člena takto:

  • typedef modified-type type;

Objekt dotaz typu je šablona, která přebírá jeden nebo více argumentů šablony.Dotaz typu veřejně odvozen, přímo nebo nepřímo z integral_constant<std::size_t, value>.Obsahuje hodnotu, která je předána jako argument value.

Alias šablony

Alias šablony pro typename foo<T>::type jsou k dispozici, kde "foo" je název třídy šablony.Můžete například add_const má šablonu alias pro daný typ add_const_t, je definován jako:

template<class T>
    using add_const_t = typename add_const<T>::type;

add_const_t

aligned_storage_t

make_signed_t

remove_pointer_t

add_cv_t

aligned_union_t

make_unsigned_t

remove_reference_t

add_lvalue_reference_t

common_type_t

remove_all_extents_t

remove_volatile_t

add_pointer_t

conditional_t

remove_const_t

result_of_t

add_rvalue_reference_t

decay_t

remove_cv_t

underlying_type_t

add_volatile_t

enable_if_t

remove_extent_t

Třídy

add_const

Zašle const typ z typu.

add_cv

Zašle const/volatile typ z typu.

add_pointer

Zašle ukazatel na typ z typu.

add_reference

Umožňuje odkazovat na typ z typu.

add_volatile

Zašle volatile typ z typu.

aligned_storage

Vytvoří vhodně zarovnaný typ.

alignment_of

Získá zarovnání textu.

common_type

Vytvoří instanci typu běžné ze dvou typů.

podmíněný

Vytvoří instanci typu běžné ze dvou typů.

rozpadu

Zašle bez odkazu, bez b nebo nezávislé typ nebo usnadňuje ukazatel k zadání.

enable_if

Vytvoří instanci typu nebo Nedefinovaný typ.

extent

Získá dimenzi pole.

has_nothrow_assign

Testy, zda typ nevyvolá přiřadit.

has_nothrow_constructor

Ověřuje, zda typ nevyvolá konstrukcí výchozí.

has_nothrow_copy

Ověřuje, zda typ nevyvolá na vytváření kopie.

has_nothrow_copy_constructor

Testy, pokud typ není výjimku na vytváření kopie.

has_nothrow_default_constructor

Testy, pokud typ není výjimku konstrukcí výchozí.

has_trivial_assign

Ověřuje, zda má tento typ trivial přiřadit.

has_trivial_constructor

Ověřuje, zda má tento typ trivial výchozí konstruktor.

has_trivial_copy

Ověřuje, zda má tento typ trivial kopie konstruktoru.

has_trivial_copy_constructor

Testy, pokud má typ trivial kopie konstruktoru.

has_trivial_default_constructor

Testy, pokud má typ trivial výchozí konstruktor.

has_trivial_destructor

Ověřuje, zda má tento typ trivial destruktor.

has_virtual_destructor

Ověřuje, zda má tento typ virtuální destruktor.

is_abstract

Ověřuje, zda se jedná o typ abstraktní třídu.

is_arithmetic

Ověřuje, zda se jedná o typ aritmetických.

is_array

Ověřuje, zda se jedná o typ pole.

is_base_of

Ověřuje, zda je jeden typ základní jiného.

is_class

Ověřuje, zda se jedná o typ třídy.

is_compound

Ověřuje, zda zadaný typ není skalární.

is_const

Ověřuje, zda je typ konstantní.

is_convertible

Ověřuje, zda je jeden typ převést do jiného.

is_empty

Ověřuje, zda se jedná o typ prázdné třídy.

is_enum

Ověřuje, zda se jedná o typ výčtu.

is_floating_point

Ověřuje, zda se jedná o typ s plovoucí desetinnou čárkou.

is_function

Ověřuje, zda je typ typ funkce.

is_fundamental

Kontroluje, zda se jedná o typ void nebo aritmetických.

is_integral

Ověřuje, zda se jedná o typ nedílnou.

is_lvalue_reference

Testuje, je-li typ lvalue odkazu.

is_member_function_pointer

Ověřuje, zda je typ ukazatel na funkci člena.

is_member_object_pointer

Ověřuje, zda se jedná o typ ukazatel na objekt člena.

is_member_pointer

Ověřuje, zda se jedná o typ ukazatel na člena.

is_object

Ověřuje, zda je typ typu objektu.

is_pod

Ověřuje, zda se jedná o typ POD.

is_pointer

Ověřuje, zda se jedná o typ ukazatel.

is_polymorphic

Ověřuje, zda má tento typ virtuální funkce.

is_reference

Ověřuje, zda se jedná o typ odkazu.

is_rvalue_reference

Testuje, je-li typ rvalue odkazu.

is_same

Ověřuje, zda dva typy jsou stejné.

is_scalar

Ověřuje, zda se jedná o typ skalární.

is_signed

Ověřuje, zda se jedná o typ znaménkem.

is_standard_layout

Testy, je-li typ standardní rozložení.

is_union

Ověřuje, zda se jedná o typ spojení.

is_unsigned

Ověřuje, zda je typ celé číslo bez znaménka.

is_void

Ověřuje, zda se jedná o typ void.

is_volatile

Ověřuje, zda se jedná o typ těkavých.

make_signed

Zadejte nečiní nebo nejmenší podepsaný zadejte větší než nebo roven hodnotě velikost k zadání.

make_unsigned

Zadejte nečiní nebo nejmenší nepodepsané zadejte větší než nebo roven hodnotě velikost k zadání.

rozsah

Získá počet rozměry pole.

remove_all_extents

Nastaví typ jiné pole z pole typu.

remove_const

Zašle bez b typ z typu.

remove_cv

Zašle b/stálé typ z typu.

remove_extent

Vytvoří typ prvku z typu pole.

remove_pointer

Zpřístupňuje typ ze ukazatel k zadání.

remove_reference

Zašle bez odkazový typ z typu.

remove_volatile

Zašle stálé typ z typu.

integral_constant

Zašle integrální konstanta z typ a hodnotu.

Typedefs

false_type

Obsahuje integrální konstanta se hodnota false.

true_type

Obsahuje integrální konstanta s hodnotou true.

Viz také

Referenční dokumentace

<functional>