Uses Windows 10 qt or gtk +

Which should I choose: GTK + or Qt?

I've never used GTK before, but from my personal experience with Qt:

It's much more than a simple GUI. It's a whole application framework. I used to think of it as Java Libraries for C ++. It includes everything you mention - database, XML, networking and threading, and more. It also includes things like containers and iterators. and counterparts to a number of Boost libraries.

What impressed me the most when I started with Qt was the extremely extensive documentation. You get a program called the Qt Assistant, which has fully indexed and searchable API documentation on your desktop, as well as plenty of code samples and tutorials. I found that searching the web for API information every time made a huge difference. Very quick access when you need to remember a method signature.

I'm not sure which one is the most common. This is probably difficult to measure accurately. They are both popular for sure. Since Gnome is Ubuntu's default desktop and Gnome runs on top of GTK, its use is obviously widespread. Of course, KDE is also very popular. Nokia is massively advancing Qt in the mobile sector - its Maemo operating system, which is used, for example, on the new N900, will soon switch to Qt as the standard toolkit (currently GTK). I believe Qt will soon become the default toolkit for Symbian OS too.

I haven't used Qt Creator, but I've heard a lot of good things about it. It's a C ++ IDE with obviously strong integration with Qt. It also has fake Vim emulation which is always nice if you like something like that!

Qt uses qmake for build configuration. I found it much nicer than having to write my own makefiles. I don't know what GTK is using to build.

A couple of things that initially bothered me about Qt were the huge uses of preprocessor macros. The signal / slots system provides a nice mechanism for relaying events / messages in your application. However, it feels like magic that may not be easily transferable to another toolkit if you ever want to. The moc (Meta-Object Compiler) also feels a little too much like magic going on behind the scenes, although I'm not entirely sure.

All in all, I would recommend Qt, especially if you are studying. It has really amazing documentation and a nice IDE and busy forums. You will be able to build C ++ apps with it very quickly, especially with the QML in 4.7.