why is c# better for game development than c++(you can be vague)

Started by
298 comments, last by normalme 19 years, 11 months ago
I’ve seen that some people think that the GC in C# is an/the advantage over C++.
You do know that there are GC(s) for C++ don’t you? There are actually quiet a lot of them, and they work well, but programmers tend not to use them.

If you want faster programs write em in assembler, or at least C
Exitus Acta Probat
Advertisement
Necro''ing bastids.

_________________Politics is the ability to foretell what is going to happen tomorrow, next week, next month and next year. And to have the ability afterwards to explain why it didn't happen. -- Winston ChurchillGDNet-0.2 - rate users the easy way with this nifty Firefox extension. Updated with new features.
quote:Original post by Calexus
You do know that there are GC(s) for C++ don’t you? There are actually quiet a lot of them

I''m sure you can provide us with a list, then.
quote:
and they work well, but programmers tend not to use them.

Oh really... so why is that, if they work well? Maybe it is because they are a pain to set up and use, requiring special semantics for creating objects?
--AnkhSVN - A Visual Studio .NET Addin for the Subversion version control system.[Project site] [IRC channel] [Blog]
if all would be so great working with gc in c++ (and all other features), there would not be a D.

remember, D is created by a developer of dmc (a c++ compiler wich has a plugin lib for gc, and all the extensions for features D has as well), because c++ doesn''t fit that nice around the things D can provide.

one of these is the gc. there are, of course, others.

the first "nice" way of adding a gc to c++ is the way c++.net will do in widbey (thats the name, not?).. with the ^ managed and * unmanaged pointers :D



If that''s not the help you''re after then you''re going to have to explain the problem better than what you have. - joanusdmentia

davepermen.net
If that's not the help you're after then you're going to have to explain the problem better than what you have. - joanusdmentia

My Page davepermen.net | My Music on Bandcamp and on Soundcloud

quote:Original post by sjelkjd
When I code in c++, and I want to create a class, I tend to do the following:
1) Create the header file.
2) Add the include guards
3) create the source file
4) include the header file in the cpp
5) add a namespace in h and cpp
6) add a class in the header
7) add a ctr, op=, dtr to the header
8) add these to the cpp
9) add the precompiled header bit(you are trying to reduce compile times, yes?)
10) add the libraries i need
11) write std:: in front of everything, since I don't want to pollute namespaces
12) actually write the thing

Sure, but this isn't an argument for C# over C++. Almost all of the above (save the last really ) can be done automatically in C++ Builder for example, at the click of a mouse. Furthermore I can't see how making windows programs can be easier than using the VCL, considering I can make a full user interface to, say, connect to the internet, download a file, ftp a file, send e-mail etc. without ever writing any significant code.

All I'm trying to say is that while I accept C# as a reasonable language, most of the arguements being made are NOT about the language itself. Sure it's better than Visual C++ for many of these things, but that's more the fault of Visual C++ than the language. Anything that you can do in C# that you can also do just as easily in C++ Builder (for example... it tends to be the best and most full-featured compiler that I've found, albeit expensive for that reason) does NOT count as an advantage of C#, for obvious reasons.

Thus while you can argue about Garbage Collection and the like (although C++ Builder has CodeGuard, which is really an ideal solution of finding the exact problems and fixing them, AND still not having the overhead of GC on production/release code), you can't use the following as reasons for the "superiority of C# as a language":
- easier Windows programming (it doesn't get any easier than BCB)
- event driven Windows programming (VCL)
- IDE automation/redundancy (good IDEs will generate redundant code for you... and then you still have the option of changing it if need be).
- to a large extent, the .NET framework, as it is fully supported in BCB 6, etc.
- etc.

I do think there is some argument to a managed framework, especially as a response to users "my Windows crashes" complaints though, so I'd suggest that that be the area to focus the argument.


[edited by - AndyTX on January 30, 2004 11:27:42 AM]
quote:Original post by AndyTX
you can''t use the following as reasons for the "superiority of C# as a language":
....
- event driven Windows programming (VCL)

You are of course aware that Borland C++ Builder relies on proprietary C++ extensions tfor a lot of the central functionality of the VCL?
--AnkhSVN - A Visual Studio .NET Addin for the Subversion version control system.[Project site] [IRC channel] [Blog]
Just my thoughts...

Iv''e been doing some c# just lately,and i like it.
But i don''t think it would be wise to write a complete 3D game engine in just c# alone.

By 3D Game,let me try to write it clearly what i mean....i mean in the context of a game,say...Max Payne2,or Vice City,Mafia (oh yes,renderware is used in a lot of games i know).

Ok,say an engine like GOD(Gathering Of Developer''s) knock out.
Exiom and Ogre...these are MY opinions,so don''t take offense,otherwise i will have to come over there and slap you! Lol aren''t complete engine''s in my opinion.

I think,until a complete modern day game(with everything going on in an engine)Rendering,Physics,AI,etc etc ,and a full game has been made,then most things people call ''Game-Engine''s'' aren''t really complete engines.

Unless the engine was designed to just do some rendering,or a 3D-walkthrough that is
then its not really a complete engine.you get what i mean...

Iv''e decided to use MC++(c++ extensions)for the performance critical areas,and put a c# front on it.

I think most ''quality'' games,never use just 1 language to develop with anyway.

Just my thoughts.

Who the hell cares about C# when you have C++ and Python?

Also, no offense taken, OGRE is a graphics engine and has never claimed to be a gaming engine at all ( even though it has some nice hooks into other related ''engines'' for glueing them together ).


.z
quote:Original post by zfod
Who the hell cares about C# when you have C++ and Python?

And you''re a software engineer?
quote:Original post by CoffeeMug
quote:Original post by zfod
Who the hell cares about C# when you have C++ and Python?

And you''re a software engineer?

And that was a sensible answer?

I don''t see much point in ''middle of the road'' languages like C#.



[ MSVC Fixes | STL Docs | SDL | Game AI | Sockets | C++ Faq Lite | Boost
Asking Questions | Organising code files | My stuff | Tiny XML | STLPort]

This topic is closed to new replies.

Advertisement