What is the most popular general purpose C++ framework? [closed]

I was looking at Qt and came to wondering, what is the most popular general purpose C++ framework, and what are some pros and cons of it?

5

4 Answers

The STL and Boost are both pretty popular, and they're pretty much the epitome of "general purpose".

5

Qt is very popular. It's available under open-source (LGPL) and commercial licenses, has fully-featured core and GUI class libraries and an integrated IDE and build system. It's also cross-platform.

It's under very active development and has a new declarative UI library (QtQuick including QML) due in the next release (4.7).

Definitely worth checking out for new projects.

For Windows-only work MFC is still worth a look. It's recently been updated.

1

The question as it stands is probably unanswerable; you'll probably end up with a list of people's interpretation of "framework" with no real way for distinguishing them.

Perhaps we need a definition of framework? I suggest it is a library that in some way determines the architecture of an entire application. However that is perhaps a definition of "Application Framework", but if you mean the term more broadly, then the question is probably too broad. This definition however makes say Qt a framework, while Boost remains just a library. That makes Boost no more or less useful, so I really don't understand what you are trying to discover from the question.

Here's a list of UI related libraries that might be considered "frameworks":

The most notable distinguishing feature is that some of them are cross-platform, and some are platform specific. Gnome is perhaps distinguished by having a C API (GTK+). .Net supports multiple languages, but requires C++/CLI rather than ISO C++ (but that is no worse than Qt's pre-processor IMO). MFC is a bit long in the tooth and not supported by free or third-party tools. TurboVision is antique and included for my amusement and geek nostalgia.

2

I know this post is old but I found it very useful. I would like to add PoCo (POrtable COmponents) to the list

I used it for seleral projects and includes a consistent and well designed framework for:

  1. XML
  2. Multi threading
  3. Networking
  4. Cryptography
  5. General purposes

It is also portable (I used it on Windows and Unix).

You Might Also Like