Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

has_trivial_destructor

Boost , Chapter 1. Boost.TypeTraits , Alphabetical Reference

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext
template <class T>
struct has_trivial_destructor : public true_type-or-false_type {};

Наследники: Если T является (возможно, cv-квалифицированным) типом с тривиальным деструктором, то наследуется от true_type, в противном случае наследуется от false_type.

Если тип имеет тривиальный деструктор, то деструктор не имеет эффекта: вызовы деструктору можно безопасно опустить. Обратите внимание, что использование метапрограммирования для пропуска вызова к одному тривиальному вызову не приносит никакой пользы. Однако, если циклы и/или код обработки исключений также могут быть опущены, то можно получить некоторое преимущество с точки зрения размера и скорости кода.

Совместимость с компилятором: Без некоторой (пока еще неуказанной) помощи компилятора, хэш-тривиал_деструктор никогда не сообщит, что класс или структура, определяемая пользователем, имеет тривиальный деструктор; это всегда безопасно, если возможно, неоптимально. Кроме того, для правильной работы с удаленными или частными деструкторами требуется поддержка C++11 decltype. В настоящее время (июнь 2015 года) компиляторы более свежие, чем Visual C++ 8, GCC-4.3, Greenhills 6.0, Intel-11.0 и Codegear, имеют необходимый компилятор intrinsics для обеспечения того, чтобы эта черта «просто работала». Вы также можете проверить, доступны ли необходимые внутренности , проверив, доступен ли макрос. BOOST_HAS_TRIVIAL_DESTRUCTOR.

С++ Стандартная ссылка: 12.4p3.

Руководитель: /has_trivial_destructor.hpp> или type_traitshpp>

Примеры:

has_trivial_destructor<int> наследует от true_type.

has_trivial_destructor<char*>::type является типом true_type.

has_trivial_destructor<int (*)(long)>::value является интегральным постоянным выражением, которое оценивает до true.

has_trivial_destructor<MyClass>::значение является интегральным постоянным выражением, которое оценивает до ложно.

has_trivial_destructor<T>::value_type является типом bool.


PrevUpHomeNext

Статья has_trivial_destructor раздела Chapter 1. Boost.TypeTraits Alphabetical Reference может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Alphabetical Reference ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 21:48:00/0.0064859390258789/0