- Loki
-
Библиотека Loki для языка программирования C++ написана Андреем Александреску как часть книги «Современное проектирование на С++: Обобщенное программирование и прикладные шаблоны проектирования».
Библиотека построена на шаблонном метапрограммировании и активно использует возможности языка C++ для обобщённого программирования.
Локи — бог хитрости и озорства германо-скандинавской мифологии. Автор надеется, что оригинальность и гибкость библиотеки будут напоминать читателям книги норвежского бога.
Содержание
Разработка
Изначально библиотека работала только с компиляторами, наиболее хорошо поддерживающими стандарт C++, но позже была перенесена (иногда не полностью) на большинство других (включая старые Borland C++ 6 и Visual C++ 6). Разработчики компиляторов часто используют библиотеку как эталонный тест, позволяющий определить совместимость со стандартом.
Loki вышла за пределы книги, продолжает развиваться и новые версии библиотеки доступны на SourceForge.net. Благодаря вкладу множества людей данная библиотека хорошо проверена и обладает высокой отказоустойчивостью.
Состав
- проверки условий на стадии компиляции;
- отображение целочисленных констант на типы;
- списки типов;
- мультиметоды;
- обобщённые реализации шаблонов проектирования: абстрактная фабрика, одиночка, посетитель.
См. также
- Boost — близкая по принципам разработки, но значительно более обширная библиотека;
- Современное проектирование на С++ — книга, для которой изначально разрабатывалась библиотека.
Ссылки
- Loki — домашняя страница библиотеки.
Категория:- Библиотеки C++
Wikimedia Foundation. 2010.