i used to learn C++ but many times get confused by pointers and forgot to free memory they held. C# have many exciting new featuers but recently i heard more and more people complained on it and most of them said C# is just what a cover for C++ and hid many many things we cant reach. i dont know much on C# and now i want to know what your guys, C++ and C# user think as the topic, do you think it is upgrade or downgrade from C++ to C# ?

thanx for all who actives on this topic~

05-16-2004

DavidP

well, literally speaking it would be a downgrade. why?

because C# uses the # sign, which is supposed to connotate a "sharp" note in music, which is a half-step up.

C++, however, uses the ++ operator, which is a full increment up.

Therefore, literally speaking:

C = 1
C# = 1.5
C++ = 2

However, enough with that. That's just joking around.

C# I think has MANY MANY nice features. Indeed I think it is an excellent language, however, I have not had as much experience with it as I have had with C++.

With C#, GUI definitely becomes much simpler than with C++. That is a fact. Also, such things as delegates, and also the new features of structs and classes are very nice. C# also has pointers, but they are not used as much as they would be in C++.

Meanwhile, C# is an interpreted language, sort of. Technically that makes it slower than C++. I have an irking suspicion, however, that Microsoft programmers have developed C# in such a way that its programs will run at C/C++ speeds in Windows environments, and then, if they ever port C# to Linux/Unix/Mac environments, they will run at more Java-like speeds.

C++ is my language of choice. Yes, memory management can be a nuisance sometimes, but I think it is an important thing that every programmer should learn and be proficient in. I have come upon scores of Java programmers up at college that have been doing Java their whole programming career, and they dont know jack crap about memory management or how to handle pointers or what the difference between the stack and heap are, etc. That is why I am so against Java being taught as a beginners language because I have seen people that dont have a clue about how to handle the memory, and they really should know how to do such things.

05-17-2004

black

Quote:

Originally Posted by DavidP

C = 1
C# = 1.5
C++ = 2

that is the real reason :D lol

05-17-2004

ZakkWylde969

You cannot argue with music theory.

05-17-2004

jverkoey

i'll have to echo what DavidP is saying about Java being taught as an introductory language. It's going to be to the point where 5 years from now, we'll have very few people who actually know what a pointer is, understand making dynamic memory, and doing any of the other low-level stuff (compared to the number of people who know about 'em today).

In a sense this is almost the same as the step from assembly to C/C++, but where the step from asm to C++ was actually a step in the right direction , because you actually have the option to use inline assembly in C/C++ anyways, whereas in Java they just say: to hell with pointers and dynamic memory management, we'll just handle all that ourselves and make the programs run slower than mollasses, and also get rid of the low-level functionality that every programmer should have access to.

05-18-2004

major_small

Quote:

Originally Posted by DavidP

Yes, memory management can be a nuisance sometimes, but I think it is an important thing that every programmer should learn and be proficient in. I have come upon scores of Java programmers up at college that have been doing Java their whole programming career, and they dont know jack crap about memory management or how to handle pointers or what the difference between the stack and heap are, etc. That is why I am so against Java being taught as a beginners language because I have seen people that dont have a clue about how to handle the memory, and they really should know how to do such things.

at the school I'm going to, we have this nerd (very stereotypical nerd) that is teaching the C++ courses... so far he seems really cool, although most people don't like him... anyway, to the point...

he's fresh from the field (<.5year) and he teaches programming the way it should be taught... he gives you a background on memory and pointers, teaches functions, and then teaches pointers... he likes to make sure people write good code and know what their code is doing... I can't wait for next semester...

right now I'm in Advanced (haha) Visual BASIC, and I can't stand it... not because the language is bad, but because they tell you how to do things and don't explain how or why they work... for example, when we print something, we're using an e.graphics method... I kinda know how it works because of my previous programming experience, but the other person in my class is just typing because the book says so...

05-18-2004

ggs

where is comedy option "C" (not so comedy)

05-18-2004

RoD

ok enough with the polls

05-20-2004

novacain

As to getting paid to write code..
In Australia, generally bad for IT, twice the ave. unemployment rate for project managers and developers (but improving)

My observations.

C++ still good money but not many jobs, mainly graduate (<2) and seniors (>7)

C# plenty of work if you have 2+ years commercial experience (!) but average money

VB some work at poor money, better if you have commercial exp. in VB.NET

ASP.NET, SQL server commercial experience is in big demand

>>It's going to be to the point where 5 years from now, we'll have very few people who actually know what a pointer is, understand making dynamic memory, and doing any of the other low-level stuff (compared to the number of people who know about 'em today).<<