Sdílet prostřednictvím


is_pod Class

Zkoušky, pokud je typ LUSKU.

template<class Ty>
    struct is_pod;

Parametry

  • Ty
    Typ dotazu.

Poznámky

is_pod<Ty>::valueje true -li typ Ty je prostý starých dat (POD).Jinak je false.

Typy aritmetické, výčet typů, typy ukazatele a ukazatele typy členů jsou LUSKU.

Kvalifikované cv verze typu LUSKU je typ LUSKU.

Matice LUSKU je LUSKU.

Struktura nebo unie, jsou všechny členů, jejichž data nestatický LUSKU, je sám LUSKU má:

  • Žádné konstruktory prohlášena za uživatele.

  • Žádné soukromé nebo chráněné nestatický datové členy.

  • Žádné základní třídy.

  • Žádné virtuální funkce.

  • Žádné data nestatický členy typu odkazu.

  • Žádné kopie uživatelem definovaný operátor přiřazení.

  • Žádné destruktoru definované uživatelem.

Proto můžete rekurzivně sestavení LUSKU struktur a pole, která obsahují LUSKU struktur a matice.

Příklad

// std_tr1__type_traits__is_pod.cpp 
// compile with: /EHsc 
#include <type_traits> 
#include <iostream> 
 
struct trivial 
    { 
    int val; 
    }; 
 
struct throws 
    { 
    throws() throw(int) 
        { 
        } 
 
    throws(const throws&) throw(int) 
        { 
        } 
 
    throws& operator=(const throws&) throw(int) 
        { 
        } 
 
    int val; 
    }; 
 
int main() 
    { 
    std::cout << "is_pod<trivial> == " << std::boolalpha 
        << std::is_pod<trivial>::value << std::endl; 
    std::cout << "is_pod<int> == " << std::boolalpha 
        << std::is_pod<int>::value << std::endl; 
    std::cout << "is_pod<throws> == " << std::boolalpha 
        << std::is_pod<throws>::value << std::endl; 
 
    return (0); 
    } 
 
  

Požadavky

Záhlaví: <type_traits>

Obor názvů: std

Viz také

Referenční dokumentace

<type_traits>

Další zdroje

<type_traits> Členové