• 0

C++ Graphical Interface?


Question

Well, I'm a beginner here, deciding whether to work on learning C++ or Delphi....

The main problem with C++ is I can't figure out how to make a simple graphical interface (with buttons, etc)

I know you can use toolkits like QT, etc. but it seems like too much trouble.

Is delphi the same way? I remember about a year ago trying delphi and I managed to make something with a graphical interface, so I'm guessing it isn't.

Also I'm still trying to decide between C++ and C#. Seems like C++ is getting outdated, I don't really know though. :p

Link to comment
https://www.neowin.net/forum/topic/660758-c-graphical-interface/
Share on other sites

13 answers to this question

Recommended Posts

  • 0

Good choice! C# is gaining lots of popularity and it is (usually) good to stay up to date with the newest technology. Although don't get me wrong, other languages can be just as great, each programmer has his own preferences on how he gets the job done. As far as delphi goes it would have been a decent choice as well, it's like VB but (in my opinion) it is much more feature rich.

  • 0

C++Builder is the same as Delphi, except it uses C++ instead of Object Pascal (Delphi).

http://www.turboexplorer.com/ is CodeGear's free range of developer products, Turbo C++ is the one you'll want to use. (There is also Turbo Delphi). There great tools to use if you want to learn without spending money.

I use Delphi for personal stuff as well as for my job.

  • 0

Creating a GUI from scratch is NOT a simple problem. GUIs are everywhere now but they took much time and research to develop. Using the Win32 API is a lot more simple, but it's still quite a steep learning curve.

So, using the drag-and-drop interface in VC# or VBasic is really the way to go for beginners, else they want to hit a formidable brick wall. I wouldn't invest too much energy in learning WinForms, though, as it is being phased out in favour of WPF.

  • 0
So, using the drag-and-drop interface in VC# or VBasic is really the way to go for beginners, else they want to hit a formidable brick wall.

I don't think it's just good for beginners; I think it's good for everyone that has no need to write their programs in C++ using MFC, Win32, Qt, or GTK. It's quicker to develop, easier to maintain, and, as a result, costs less to develop.

I wouldn't invest too much energy in learning WinForms, though, as it is being phased out in favour of WPF.

It's definitely not being phased out. Both environments will be maintained for years to come.

  • 0
I wouldn't invest too much energy in learning WinForms, though, as it is being phased out in favour of WPF.
It's definitely not being phased out. Both environments will be maintained for years to come.

sbauer is right, but here's why. Windows Forms is just a light wrapper over Windows API (just use Reflector and see for yourself). And Windows API isn't being phased out because it's the very basis for the entire Windows operating system.

WPF (Windows Presentation Framework) isn't a replacement for Windows API. It's entirely new functionality for cool things like vector layouts (and much more cool stuff).

  • 0

If your target platform is Windows, then C# is really the best way to go these days. The biggest exceptions are if you're doing in-process add-ins for the Windows shell or an unmanaged app, or trying to write "close to the metal" for a super optimized game or something. Or, you know, working on Windows itself :p

That's not to say C++ is going anywhere, but the main reasons it will remain pervasive are that people already know it and already have code written in it. For a new programmer, C# generally makes the most sense. Then if you do learn C++ later on you'll at least have learned a language that's kinda sorta syntactically similar.

  • 0

Visual C++ used to be pretty cool, but I think these days people are just using C# or VB.NET.

C++ is still a language that any worthwhile programmer should be fairly comfortable with. I'm not saying you need to be an expert in it (although you SHOULD be an expert in at least one full-fledged object-oriented language), but if you aren't at least familiar with lower-level things like memory management and pointer arithmetic, you're not fully understanding how programming works and your higher-level code won't be as good.

The bottom line is this: more new projects are being done in C#, so if you're looking for a job right now, C# is probably better to have on your resume. But there's way more code out there that's in C++, so if you're more likely to be maintaining C++ code. Plan accordingly.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.