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.
Trending News
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
- pugykingLv 41 decade agoFavorite 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).
- BernzLv 61 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#.