Udostępnij za pośrednictwem


has_trivial_destructor — Klasa

Badania, jeśli typ ma trivial destruktora.

template<class Ty>
    struct has_trivial_destructor;

Parametry

  • Ty
    Typ kwerendy.

Uwagi

Wystąpienie typu predykat posiada wartość PRAWDA, jeśli typ Ty jest klasą, która ma trivial destruktora, inaczej przechowuje wartość false.

Destruktora dla klasy Ty jest trivial jeśli:

to jest niejawnie zadeklarowanej destruktora

wszystkie bezpośrednie podstawy klasy Ty mają trivial destruktorów

klasy wszystkich członków danych statycznych typu klasy mają trivial destruktorów

klasy wszystkich członków danych statycznych typu tablicy klasy mają trivial destruktorów

Przykład

 

// std_tr1__type_traits__has_trivial_destructor.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) 
        { 
        } 
 
    ~throws() 
        { 
        } 
 
    int val; 
    }; 
 
int main() 
    { 
    std::cout << "has_trivial_destructor<trivial> == " << std::boolalpha 
        << std::has_trivial_destructor<trivial>::value << std::endl; 
    std::cout << "has_trivial_destructor<throws> == " << std::boolalpha 
        << std::has_trivial_destructor<throws>::value << std::endl; 
 
    return (0); 
    } 
 
  

Wymagania

Nagłówek: <type_traits>

Przestrzeń nazw: std

Zobacz też

Informacje

<type_traits>

has_trivial_constructor — Klasa

has_virtual_destructor — Klasa

Inne zasoby

<type_traits> Członkowie