has_trivial_assign Class
Testy, jeśli typ jest trywialny przypisać.
template<class Ty>
struct has_trivial_assign;
Parametry
- Ty
Typ kwerendy.
Uwagi
Wystąpienie predykat typu posiada true, jeśli typ Ty jest klasa, która posiada trywialny operator przypisania, inaczej przechowuje wartość false.
Operator przypisania kopia dla klasy Ty jest trywialny jeśli:
jest deklarowany niejawnie
Klasa Ty ma żadnych funkcji wirtualnych
Klasa Ty ma nie podstaw wirtualnych
wszystkie bezpośrednie podstaw klasy Ty mają trywialny operatory przypisania
klasy wszystkich członków-statycznej danych typu klasy mają trywialny operatory przypisania
klasy wszystkich członków-statycznej danych typu tablicy klasy mają trywialny operatory przypisania
Przykład
// std_tr1__type_traits__has_trivial_assign.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 << "has_trivial_assign<trivial> == " << std::boolalpha
<< std::has_trivial_assign<trivial>::value << std::endl;
std::cout << "has_trivial_assign<throws> == " << std::boolalpha
<< std::has_trivial_assign<throws>::value << std::endl;
return (0);
}
Wymagania
Nagłówek: <type_traits>
Obszar nazw: std
Zobacz też
Informacje
Inne zasoby
<type_traits> Członkowie