Какие современные библиотеки C ++ должны быть в моем наборе инструментов? [закрыто]

185

Я не играю в C ++ около 10 лет и хочу вернуться и начать работать с коммерческим приложением. Какие библиотеки используются в эти дни?

  • Пользовательский интерфейс (например, wxWidgets , Qt )
  • База данных
  • Общего назначения (например, Boost , Loki , STL)
  • Резьбонарезной
  • тестирование
  • Сеть / розетки

Я хотел быть совместимым с кроссплатформенностью (как можно больше из коробки).

На какие библиотеки вы полагаетесь? Какие функции они предоставляют, которые делают их «незаменимыми» ?

Смотрите мой ответ ниже для краткого изложения.

Райан Эмерл
источник

Ответы:

192

Кроссплатформенные библиотеки, которые бесплатны для коммерческих (или некоммерческих) приложений

Не стесняйтесь расширять этот список




Ссылки на дополнительные списки библиотек C ++ с открытым исходным кодом:

http://en.cppreference.com/w/cpp/links/libs

JBentley
источник
1
Было бы здорово, если бы вы показали XML Libs тоже ...
Оливер
1
@OliverStutz Я добавил несколько библиотек XML. Кредит идет на этот отличный ответ, который содержит анализ того, какой из них использовать.
JBentley
@JBentley спасибо, я использую Pugixml, понял, что это довольно круто, маленький, компилируемый ... :-)
Оливер
@@ AfzaalAhmadZeeshan Набор инструментов для синтеза, как представляется, соответствует критериям для этого вопроса / ответа, будучи кроссплатформенным и бесплатным. Я добавил это обратно сейчас. Можете ли вы объяснить, почему вы считаете, что это не подходит для этого списка?
Дж.Бентли
Я думаю, что библиотека повышения является лучшей для общего назначения.
Mahmut EFE
29

Извините за повторение некоторых уже написанных материалов, но:

(Должен хотя бы начать)

rjnilsson
источник
11

В Windows ...

ATL для разработки COM WTL для пользовательского интерфейса

FrodoH
источник
10

CGAL - отличная библиотека C ++ для вычислительной геометрии

www.cgal.org

янь-Цюй
источник
8

http://loki-lib.sourceforge.net/ также может быть хорошим дополнением.

Это еще одна библиотека шаблонов, которая представляет списки типов и реализации для различных шаблонов проектирования.

Я никогда не использовал его, но я прочитал книгу Александреску, чтобы лучше понять шаблоны.

Ронни Брендель
источник
12
ScopeGuard от Loki изменит вашу жизнь . Шутки в сторону. Вы будете сильнее, быстрее и привлекательнее для противоположного пола.
j_random_hacker
5

CppUnit для модульного тестирования и разработки через тестирование

Эндрю Стейн
источник
0

Помимо всех замечательных библиотек, перечисленных выше, я считаю полезным сочетание xerces для XML (включая проверку XSD) и xalan для XSLT (xalan построен поверх xerces). AFAIK, ни QT, ни POCO не имеют функциональности XSLT (если только она не была добавлена ​​с тех пор, как я последний раз их использовал).

Ralf
источник