C++ / Win32 API

Recently I decided to start with some Win API and C++ (since C++ is the language I really love and enjoy) and I want to hear from you guys what do you think about it.

I found a tutorial about using Win API here: http://www.winprog.org/ and I'm thinking to stick with it.

What are you suggestions or is there some better, faster and easier to implement API that you would recommend.

Thanks for your time
Aleksandar Grbic
Well, when I started learning Win API about 13 years ago - it seems cool to me. I wrote several good programs, some using OpenGL etc... It was fun.

When I was using C++ at my job, 3 years ago - it was not that fun. Too much code to write, absense of portability, no great compatibility between windows versions.

(And C++ appeared not as fun also - hunting for bugs left by colleagues, portability issues etc...)

I switched to java - its standard Swing graphic library is cool enough and of course "run everywhere" works. Language is more sturdy.

But if about C++... Perhaps it is better idea to use cross-platform graphic libraries, like Qt etc. Though writing for WinAPI small programs for your own usage is anyway nice business.
Language is more sturdy.


Waaaat?
Well saying that Java is stronger then C++ seams just wrong but rest of the stuff you said is probably true. I guess I ll stick to Qt since most of the people would recommend it anyway.

Well saying that Java is stronger then C++ seams just wrong

"Stronger" does not make any sense in comparing programming languages. I only meant secondary qualities (like fool-proofness, testability etc.) which are not as important when you are writing the program alone and perhaps for yourself only (but may be crucial enough in industrial development with several programmers).

As about Qt - though I mentioned it, I dare to recommend check other alternatives also. My experience with Qt was successful enough but I think I wish it to be bit more clear / simpler. Idea of adding meta-compiler to C++ seems to me a bad parody to C# or Java.
Last edited on
Thanks for your response.
If you do not recommend Win32 API or Qt, could you please recommend me something else ? I don't want to move from C++ just because it's not well supported by Win API's but if you have some good suggestions I would really appreciate that information.

C based languages is something I prefer and enjoy for some reason and I would like to move from console applications onto something that I can sell eventually. C# is nice but it reminds me too much of Visual Basic and .net framework generally is something I really don't enjoy.

Thanks in advance,
Aleksandar
closed account (o1vk4iN6)
It's not uncommon for projects to generate source code and add it as part of the build process. It makes your life easier as you don't have to maintain all the ugly repetitive gui code and they provide their own tools for easily making the gui's which can't be said for other libraries such as wxWidgets (at least last time i used it they didn't provide a good first party solution).

Last i used Java's gui library they didn't even try to make it look native at all for the system it ran on. Qt is probably one of the few libraries that manage to get it right. It doesn't look off on any OS you use it on.
So I should try out wxWidgets ? I've seen many professionals on Going Native this year using it...
I sometimes feel like I'm in the minority here but I personally like the Win32 API. It's powerful, well studied (there are plenty of code examples readily available online) and very well documented. If you don't like the Component Object Model though you'll be limiting yourself quite a bit. People say that there is a lot of code to write and that is kind of true, but you don't necessarily need to make a GUI for every program. Just remember that the Win32 API was targeted at the C language, there are things done in the examples on MSDN that have better ways of being done in C++.
closed account (S6k9GNh0)
wxWidgets is certainly underrated. The main advantage I see in Qt is QML and it's quick adaptation of C++ changes over the years compared to wxWidgets which still refuses to use namespaces and sticks to (albeit consistently) to C++98.

EDIT: As for a C-based GUI library, they are far and few. GTK+ is the closest one but has very shoddy support for anything other than the Linux platform. Sadly, even D has to port C++ libraries to the language since there's nothing to really wrap over in from C.
Last edited on
Topic archived. No new replies allowed.