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
has_trivial_constructor — Klasa
has_virtual_destructor — Klasa