What modern C++ libraries should be in my toolbox?

C++

C++ Problem Overview


I've been out of the C++ game for about 10 years and I want to get back in and start on a commercial app. What libraries are in use these days?

  • User interface (e.g, wxWidgets, Qt)
  • Database
  • General purpose (e.g. Boost, Loki, STL)
  • Threading
  • Testing
  • Network/sockets

I looking to be cross-platform compatible (as much as possible out-of-the-box).

What libraries to do you rely on? What features do they provide that make them "indispensable"?

See my answer below for a summary.

C++ Solutions


Solution 1 - C++

Cross-platform libraries that are free for commercial (or non-commercial) applications

Feel free to expand this list




Links to additional lists of open source C++ libraries:

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

Solution 2 - C++

Sorry for repeating some of the stuff already written, but:

(Should at least get you started)

Solution 3 - C++

On Windows...

ATL for COM development WTL for user interface

Solution 4 - C++

CGAL is an excellent c++ library for computational geometry

www.cgal.org

Solution 5 - C++

http://loki-lib.sourceforge.net/ might also be good addition.

It's another template library, which introduces typelists, and implementations for various design patterns.

I never used it, but I read Alexandrescu's book to get a better understanding of templates.

Solution 6 - C++

CppUnit for unit testing and test driven development

Solution 7 - C++

Besides all the great libraries already listed, I find the combination of xerces for XML (including XSD validation) and xalan for XSLT to be useful (xalan is built on top of xerces). AFAIK neither QT or POCO have XSLT functionality (unless it's been added since I last used them).

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionRyan EmerleView Question on Stackoverflow
Solution 1 - C++Ryan EmerleView Answer on Stackoverflow
Solution 2 - C++rjnilssonView Answer on Stackoverflow
Solution 3 - C++FrodoHView Answer on Stackoverflow
Solution 4 - C++yang-quView Answer on Stackoverflow
Solution 5 - C++Ronny BrendelView Answer on Stackoverflow
Solution 6 - C++Andrew SteinView Answer on Stackoverflow
Solution 7 - C++RalfView Answer on Stackoverflow