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

Implementation

Boost , The Boost C++ Libraries BoostBook Documentation Subset , Chapter 36. Boost.TR1

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

Когда Boost.TR1 настроен на, чтобы использовать нативную реализацию TR1 вашей стандартной библиотеки, то это не очень много: он просто включает соответствующий заголовок.

Когда поднимется. TR1 использует реализацию Boost конкретного компонента, затем он включает соответствующий заголовок (заголовки) Boost и импортирует необходимые декларации в<namespacestd::tr1>с использованием деклараций. Обратите внимание, что импортируются только те декларации, которые являются частью стандарта: реализация намеренно довольно строгая в отношении не включения каких-либо расширений Boost в<namespace std::tr1>, чтобы уловить любые ошибки переносимости в коде пользователя. Если вам действительно нужно использовать расширения Boost, вы должны включить заголовки Boost напрямую и использовать объявления в<namespaceboost::>. Обратите внимание, что этот стиль реализации не полностью соответствует стандартам, в частности, невозможно добавить пользовательские шаблонные специализации компонентов TR1 в<namespacestd::tr1>. Есть также одна или две библиотеки Boost, которые еще не полностью соответствуют стандартам, любые такие несоответствия документируются вTR1 по предметному разделу. Однако случаи нестандартного поведения на практике должны быть крайне редкими.

Если вы используете стандартный соответствующий заголовок (в<boost/tr1/tr1>), то эти имена заголовков иногда могут противоречить существующим стандартным заголовкам библиотеки (например,<shared_ptr>добавляется к существующему стандартному заголовку библиотеки<<memory>>, а не к собственному заголовку). Эти заголовки пересылаются в существующий стандартный заголовок библиотеки одним из двух способов: для gcc он использует<#include_next>, а для других компиляторов он использует макрос<BOOST_TR1_STD_HEADER(header)>(определяется вboost/tr1/detail/config.hpp), который оценивает до<#include<../include/header>>. Это должно работать «прямо из коробки» для большинства компиляторов, но означает, что эти заголовки никогда не должныразмещаться в каталоге, называемом «включить», который уже находится в пути поиска компилятора.


PrevUpHomeNext

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




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



:: Главная :: Chapter 36. Boost.TR1 ::


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 17:12:59/0.0083651542663574/1