Recently I wanted to start my own project, I have an idea – but the question arose with the implementation, in particular, with the creation of the interface.
I want to write a project in C / C++ and at the same time I plan to use MS Visual Studio 2013. Perhaps you can tell right away that I would use Qt, but I do not want to touch it for two reasons:
Universities require MSVS, course will be on it, etc.
I still want to understand first with technologies from Microsoft.
So, I fumbled a little in the net, I realized that there are such things as WinForms and WPF. There is also a winAPI option. And here I have a stupor – where, what and how?
Help me figure out what technologies are used to create interfaces using C++ in MSVS; what is better to use today? And also advise the normal literature on this matter.
A project within the university (a small electrical engineering program for calculating all quantities according to a given scheme), if it is important.
And yet I repeat in my question: what you need to know and what you need to learn to start writing a GUI in C++ with help. Visual Studio?
Answer 1, authority 100%
The closest thing to you is MFC. WinForms is not C++, it is C++ / CLI that runs on the MS .Net Framework.
The trouble with MFC is that it is a thin layer over WinAPI, where a step to the left and a step to the right from the ideology of the framework is an abyss.
It is possible and necessary to write good interfaces. But, fortunately or unfortunately, Qt has almost no alternative here. Let it introduce into the language extensions in the form of signal slots, as a result – preprocessing of the source code by MOC, but this is really a usable diamond in the world of C++.
For academic purposes, it is advisable to master pure C++, within reasonable limits – WinAPI. Real, more or less complex, portable interfaces can be written with wxWidget, GTKmm and others like them, just for fun.
But Qt is the present and future of C++)
PS The Qt plugin allows you to write from under MSVS. However, the studio is hostile to Unicode.
Answer 2, authority 40%
MFC is good because
- most teachers are bigger
do not own anything
- all manuals in most universities are written in MFC and it is easy to find the cases you need using it.
- MFC makes it easier to understand how WinAPI works, and this knowledge will not be superfluous in the future.