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

Struct deduce_domain

Boost , The Boost C++ Libraries BoostBook Documentation Subset , 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

Struct deduce_domain

boost::proto::deduce_domain — A pseudo-domain for use in functions and metafunctions that require a domain parameter. It indicates that the domain of the parent node should be inferred from the domains of the child nodes.

Synopsis

// In header: <boost/proto/domain.hpp>

struct deduce_domain {
};

Description

Когда<proto::deduce_domain>используется в качестве домена — либо явно, либо косвенно<proto::make_expr()>,<proto::unpack_expr()>, либо оператор Proto перегружает — Proto будет использовать домены детских выражений для вычисления домена родителя. Это делается таким образом, что (A) выражения в доменах, которые разделяют общий супердомен, являются взаимодействующими, и (B) выражения, которые находятся в домене по умолчанию (или его поддомене), совместимы свсемивыражениями. Правила следующие:

  • сильнее, чем его супердомен.
  • <proto::default_domain>,<proto::basic_default_domain>и все их поддоменыслабее, чем все другие домены.
  • <proto::basic_default_domain>слабее<proto::default_domain>.
  • Для каждого ребенка определите набор доменовSN, который включает в себя домен ребенка и все его супердомены.
  • Определить наборIS, который является пересечением всех индивидуальных множествSN, которые не содержат<proto::default_domain>или<proto::basic_default_domain>.
  • Определите наборIW, который является пересечением всех индивидуальных наборовSN, которые содержат<proto::default_domain>или<proto::basic_default_domain>.
  • Определите наборP, который является союзомISиIW.
  • Общий домен является самым сильным доменом в набореPсо следующими оговорками.
  • ПустьUбудет объединением всех множествSN. Если результат<proto::default_domain>или<proto::basic_default_domainUсодержит элемент, которыйне<proto::default_domain>или<proto::basic_default_domain>, то это ошибка.

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


PrevUpHomeNext

Статья Struct deduce_domain раздела The Boost C++ Libraries BoostBook Documentation Subset Reference может быть полезна для разработчиков на c++ и boost.




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



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


реклама


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

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