Комментарии 5
Можно найти более качественное решение при помощи boost, но можно ли найти более качественный перевод при помощи человека хоть отдалённо знакомого с С++?
В чём отличие bimap
от bitmap
и что из этого переводится как "битовый массив"? Как резолвятся темплейтные аргументы в small_vector<int, 5="">
? Что происходит при инклуде #include <boost asio="" ssl.hpp="">
Стоит ли вычитывать переводимую статью в поисках ошибок автора или забить на это неблагодарное дело?
Эти и другие вопросы в нашей регулярной рубрике "статья-перевод в корпоративном бложике".
обращайтесь к Boost, так как велики шансы, что там для вас найдется готовое решение
Которое обеспечит вам не один час развлечений с overengineered классами, где, чтобы понять откуда торчат ноги происходящего, придётся пройти через
template
<
class SubType,
typename DomainT,
typename CodomainT,
class Traits = icl::partial_absorber,
ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(ICL_COMPARE_DEFAULT, DomainT),
ICL_COMBINE Combine = ICL_COMBINE_INSTANCE(icl::inplace_plus, CodomainT),
ICL_SECTION Section = ICL_SECTION_INSTANCE(icl::inter_section, CodomainT),
ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare),
ICL_ALLOC Alloc = std::allocator
>
Увы, но в подавляющем большинстве проектов подключение буста будет overkill с точки зрения !/$
В Boost сейчас 161 библиотека, и это отличный пример того, что сам язык С++, при всей его невероятной мощи, глубоко несовершенен. Немаленькая часть библиотек языка даже по официальной классификации - "эмуляция языковых возможностей", а я бы в эту категорию еще многие другие библиотеки включил.
Я не могу сказать что знаю Boost и что активно им пользуюсь, но ради интереса отслеживаю что там появляется нового. Те либы которые переносят в std - действительно полезные востребованные библиотеки, но таких не так уж и много.
Находим более качественные решения при помощи boost