Программисты должны иметь достаточно знаний, чтобы использовать эту библиотеку после прочтения Введения.Начало работыиУчебные разделы.Ссылкараздел может быть рассмотрен в более позднем пункте для быстрой ссылки. Все остальные разделы данной документации можно считать факультативными.
Некоторые сноски отмечены словом «Обоснование». Они объясняют причины решений, принятых при проектировании и реализации этой библиотеки.
В большинстве примеров, представленных в данной документации, буст. Для проверки условий корректности используется макрос<boost/detail/lightweight_test.hpp><BOOST_TEST>. Макрос<BOOST_TEST>концептуально похож на<assert>, но отказ проверенного состояния не прерывает программу, вместо этого он заставляет<boost::report_errors>вернуть ненулевой код выхода программы.
Авторы первоначально разработали и протестировали библиотеку на GNU Compiler Collection (GCC) C++ 3.3, 3.4, 4.1, 4.2, 4.5.3 (с функциями C++11 и без них<-std=c++0x>), Microsoft Visual C++ (MSVC) 8.0 и Intel 10.1 под Linux, Cygwin и Windows 7. Однако эта библиотека должна использоваться на любом компиляторе, который поддерживаетBoost. Тип, кроме:
MSVC 7.1 и 8.0 не удается связать, если функция сBoost.ScopeExitвключена несколькими блоками перевода.
См. результаты регрессионного теста библиотекидля получения подробной информации о поддерживаемых компиляторах и платформах. Проверьте библиотечный регрессионный тест<Jamfile.v2>для любой специальной конфигурации, которая может потребоваться для конкретного компилятора.
Эта библиотека состоит только из файлов заголовка. Поэтому не существует предварительно скомпилированного объектного файла, который необходимо установить. Программисты могут просто инструктировать компилятор, где найти файлы заголовка библиотеки (опция<-I>на GCC, опция</I>на MSVC и т.д.) и компилировать код с помощью библиотеки.
Реализация библиотеки используетBoost.Typeofдля автоматического вывода типовBoost.ScopeExitзахваченных переменных (см. разделTutorial). Для компиляции кода в режимеэмуляциивсе типы должны быть надлежащим образом зарегистрированы с использованием<BOOST_TYPEOF_REGISTER_TYPE>и<BOOST_TYPEOF_REGISTER_TEMPLATE>или соответствующихBoost. Тип заголовковдолжен быть включен (см. исходный код большинства примеров, представленных в этой документации).
Обоснование.Используя рост. Деталь/легкий вес Тест позволяет добавлять примеры в библиотечные регрессионные тесты, чтобы убедиться, что они всегда компилируются и выполняются правильно.
Статья Getting Started раздела Chapter 1. Boost.ScopeExit 1.1.0 Chapter 1. Boost.ScopeExit 1.1.0 может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.