Yahoo Answers is shutting down on May 4th, 2021 (Eastern Time) and beginning April 20th, 2021 (Eastern Time) the Yahoo Answers website will be in read-only mode. There will be no changes to other Yahoo properties or services, or your Yahoo account. You can find more information about the Yahoo Answers shutdown and how to download your data on this help page.

Anonymous
Anonymous asked in Computers & InternetProgramming & Design · 1 decade ago

visual c++ or visual c#?

which shall I use to create a Windows application? do people use c++ anymore? what are their differences in terms of learning curve, speed, resources consumed, debugging, wide availability of class libraries ?

5 Answers

Relevance
  • 1 decade ago
    Favorite Answer

    If you are building Windows Applications, C# is absolutely the way to go. I have some contacts with software developers and asked this very same question a year or two ago and was told hands down to go with C# for Windows applications. Windows is even working on libraries to make C# usable for various other platforms (I just downloaded and played with a C# compiler for Ubuntu Linux a few days ago, works great).

    C# is also more user friendly using only the "." rather than "::" and "->" to get to an objects properties and methods (half the key strokes and way less headache). C# is very type strict meaning if you want to convert an integer to a double you have to do so explicitly or the compiler gives you an error. This type strictness seems like a headache (and can be at times) but it results in better code. For example, if you use the following "if" statement in C, it will compile but give you an unexpected result:

    if(a = b)

    This will set a equal to be and the if will always return true, in C# you will get an error saying the compiler cannot implicitly convert from int to bool, you change it to if(a == b) and you're good to go.

  • 1 decade ago

    It depends if you're doing traditional Visual C++, or Visual C++.NET. Those two are very different. The .NET one works much like C# (which is implemented on .NET also), but C# is easier.

    In terms of learning curve, resource consumed, and availability of libraries, C# is the easiest/quickest to develop in. After all, it is used for RAD (Rapid Application Development).

  • Bernz
    Lv 6
    1 decade ago

    As a quick answer, I would propose using C# if you're thinking about one or the other. C# is much simpler to use and is a more modern language (no memory cleanup necessary, easier syntax, etc.).

    C++ will still be around for a while since it does allow a strong programmer to build very quick code because it allows you to code at a lower level.

    Good luck!

  • 1 decade ago

    It depends somewhat on what you plan on programming. If you plan on doing business applications, I would suggest using C#. Many businesses employ C# as their primary programing language. If, however you plan to work on things suck as video games or you plan to have your software interact with hardware then C++ is certainly the way to go. Honestly, there is no best option, it depends on your future plans. My recommendation would be to start with C# and then move on from there. If is fairly easy to learn, and once you learn a c language, it is easy to transition to another.

  • How do you think about the answers? You can sign in to vote the answer.
  • 1 decade ago

    If you want to make cross-platform applications (i.e applications which run on Windows, Mac OS X, Linux, etc), then use C/C++ with WxWidgets or Qt. If you want to make applications which run on Windows, only, you should go with C#.

Still have questions? Get your answers by asking now.