Skip to main content
gamedev.net
🔒 Locked

C++ or C#

Started by ianp622 4 replies 1.2k views
Original Post
ianp622
ianp622
Hi, I'm interested in getting into game programming with Direct3D sometime. Right now I'm using Blitz Basic, but I'd like to move up sometime. I'm somewhat experienced with C and program in it almost every day for work. I wanted to know, would it be better to learn C++ or C# next? I know the standard is C++, but with Direct3d 10 becoming more ingrained in the .NET framework (at least that's what I've heard, and I've seen alot of books that use C# instead of C++), I didn't know if it would be better to plan ahead and just go with C#, or go with C++ and switch when I need to.
Spoonbender
Spoonbender
At the moment, C++ is by far the most widely used in commercial games.

That's about the only thing you can be sure of. That might change in a couple of years... Or it might not.

The's no "best" language, or "best" choice. If you already know C, C++ should be easy to learn. But so should C#.

It depends on what you plan to use it for, really. If you just want to be able to make games yourself, C# would be the more productive choice. If you plan to get into the industry, C++ *might* be an advantage.

However, "planning ahead" doesn't really make sense when it comes to programming languages. You should be able to pick up C# in a couple of days if you already know C++. And the other way around, if you know C and you know C#, C++ shouldn't pose a challenge either. So you can start with either language without causing trouble for yourself later on.

The only tip I can give is that it's generally better to know many languages than knowing only a few. [grin]
Which order you learn them in doesn't make a lot of difference. Go with what seems the most interesting.

edit:
I guess a better way of putting it woudl have been: "If you plan to apply for a job developing a commercial AAA game next week, go with C++". [grin]

If that's not in your plans, there's really no wrong choice. You might prefer C# for being so much easier to use and learn, or you might be masochistic enough to want to go through C++... [lol]

[Edited by - Spoonbender on July 3, 2006 5:06:40 PM]
ianp622
ianp622
Thanks for the advice. I think I'll go with C++ then, since I have a bunch of books on it.
daviangel
daviangel
Quote:
Original post by ianp622
Thanks for the advice. I think I'll go with C++ then, since I have a bunch of books on it.

That's the other advantage of choosing C++ over C#-there are few books on C# and game programming while there are bookshelves full of books on C++/game programming!
If you are short on time though you might have to go with C# since it takes about 1/2 the time and code to use compared to C++.
[size="2"]Don't talk about writing games, don't write design docs, don't spend your time on web boards. Sit in your house write 20 games when you complete them you will either want to do it the rest of your life or not * Andre Lamothe
Surg
Surg
Quote:
Original post by Anonymous Poster
use C++ unless you are really scared of pointers and dont trust yourself managing memory.


He already decided, No one should post anymore... this'll become a C++ vs. C# topic fast.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.