Visual C++.net vs Visual C#.net

Started by
49 comments, last by Drilian 16 years, 11 months ago
1) which is the best for game programming? 2) which is easier to learn for game programming?
Advertisement
This cannot be answered in one sentence (or even 15.)
Try both and decide for yourself.
If it would be a matter of one being simply better, wouldn't you think you wouldn't have heard of the other?
well i'm currently learning c++ for game programming and i can't believe how much code you need to write in c++ just just to create a simple windows program. i like the forms in .net much better. care to spend more that a few sentences describing your views?
HansDampf: Have you heard of Brainfuck? ;-)

Shrek2:
1) Both of the languages are currently used to develop games by hobbyists and proffesionals alike. None of them have game specific features, so I'd say they're equally good or bad. C++ allegedly has some more options for manual optimization.

2) C# (probably with the XNA framework)

It's generally easier to learn and use a modern language (implies automatic memory management) like C#, Java, or any of the scripting languages like Python, etc.

You will be productive in those languages much faster than you will in C++, and your productivity is likely to stay higher too.
why do industry professionals use c++ when c# seems much easier? almost all the programming job advertisements want c++. is the reason simply because there's a lot of legacy code and people don't want to reinvent the wheel? will most professionals choose c# if they can start all over again?
C# isnt crossplatform and/or the code is not as secure as C++
C# its more like java it works on the .net framework.

Preferably i like C++ you have much more control over stuff.
If you want to program easy C# is the way to go
C++ is still the industry standard because alot of the APIs are still written in C/C++ and C++ is still a little bit faster than C#. Also I don't believe C# was designed to become the industry standard in gaming programming. Each programming language has it purpose and even tho C#, because of the XNA framework, can do game programming, does not mean it should be the standard. This also does not mean you should not use it for you game programming. Use whatever works best for you.
1) You first question is not easy to answer, however this is my opinion... C++ is currently the path of least resistance to create games that meet todays expectations regarding game performance. It also has overwhelming momentum in the commercial games industry. .NET managed code is the future. A hybrid transition period where native C++ and C# are both used (think platform developers vs. content developers) will probably exist for a while. Eventually C++ will be marginalized to the lowest of levels; just like Assembly Language has been.

2) You second question is easy.. C#/XNA is much easier to learn than C++/DirectX.
From my understanding C# is cross platform with the MONO framework for Linux.

Also, One point about what I do like about C++ is that you do have more control and have the ability to add ASM code with in your project to gain a little extra speed.
The reason I use C++ rather than C# is that C++ doesn't run on anything but Microsoft operating systems (Except Mono). That means no consoles except the 360, and even then the C# code is much less efficient.

This topic is closed to new replies.

Advertisement