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

Boost.Hana: boost::hana::IntegralConstant< C > Struct Template Reference

Boost , ,

Boost.Hana  1.0.1
Your standard library for metaprogramming
Концепция<IntegralConstant>представляет интегральные значения времени компиляции.

Понятие<IntegralConstant>представляет объекты, которые имеют значение<constexpr>интегрального типа. Другими словами, он описывает основные функции, предоставляемые<std::integral_constant>.<IntegralConstant>также представляет собой особый вид<Constant>, внутреннее значение которого является интегральным типом.

Minimal complete definition

Требования к тому, чтобы быть<IntegralConstant>, довольно просты. Во-первых,<IntegralConstant><C>должен быть<Constant>таким, что<Tag::value_type>является интегральным типом, где<Tag>является меткой<C>.

Во-вторых,<C>должен иметь вложенный<static constexpr>элемент, названный<value>, так что действителен следующий код:

constexpr auto v = C::value;

Из требования, что<Tag::value_type>должен быть интегральным типом, следует, что<C::value>должен быть интегральным значением.

Наконец, необходимо специализировать шаблон<IntegralConstant>в пространстве имен<boost::hana>, чтобы сказать Хане, что тип является моделью<IntegralConstant>:

namespace boost { namespace hana {
template <>
struct IntegralConstant<your_custom_tag> {
static constexpr bool value = true;
};
}}

Refined concept

  1. Constant(свободная реализацияvalue)
    Функцияvalue, требуемая дляConstant, может быть реализована следующим образом дляIntegralConstant:
    значение() ==С:: значение
    Функцияtoдолжна быть предоставлена явно для того, чтобы модельConstantбыла полной. The to function must still be provided explicitly for the model of Constant to be complete.[ORIG_END] -->

Concrete models

<hana::integral_constant>

Статья Boost.Hana: boost::hana::IntegralConstant< C > Struct Template Reference раздела может быть полезна для разработчиков на c++ и boost.




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



:: Главная :: ::


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-20 01:58:55/0.0052421092987061/1