Quote:Original post by memento_mori
well C++ has tiny insignificant differences (syntax-wise) from C..
Syntax means practically nothing. They are similar syntax-wise, so what?
Quote:Although it really is a totally different languages, the programming concepts are all the same (as it is with almost all languages),
Far from the truth C advocates the procedural programming paradigm, which is generally considered inferior to the OO programming paradigm. C++ is a multi-paradigm language, but many consider it an OO language because many of the added features in C++ aids in OOP. The concepts aren't even close to similar. C++ also adds proper support for generic programming.
Quote:but even the syntax is almost the same..
The syntax is about the only thing which is the same (and that they both have the C standard library).
Quote:the only new concepts introduced are Objects ... that is classes and structures.
Have you even considered templates, the type system, type safety, the C++ library, namespaces, cv-qualifiers, exceptions, RTTI etc.?
Quote:Without those it is very hard to write a fully structured program and you will have truble maintaining and remembering your functions after your game jumps over the 1000 lines...
No, a well-written procedural program can easily be managed even though it's over 1 million lines of code (I believe some C projects are over 10M lines of code, but I don't have any references).
Quote:use classes WHENEVER you can.
No, whenever it's appropriate to do so. Don't do this:
class string_utils{ static std::string to_upper_case(const std::string& in);};
That is just forcing procedural code to be OO. Instead learn proper OO practices, and you will automatically use classes and objects instead of functions in almost all cases.
Some interresting links about C++:
Why C++ is not just an Object Oriented Programming Language (by the author of C++)
Learning Standard C++ as a new language (also by the author of C++)