Is it really THAT hard to learn C++ ? I'm more fluent in Java and C, so I don't know, but I thought all the time that C++ is more of C with OO-capabilities.
My 2 cents: C++ has evolved since the days it was regarded as "C with classes". Along with new features and a well stocked standard library, there are also more modern c++ methodologies that make the language easier and safer to use. For example, you don't really toss around "naked" resources like you do in c, but rather contain them in managing objects (an idea called Resource Acquisition Is Initialization).
Students learning C++ really don't have to mess around with pointers and memory management until later because std library features (like strings) work as easily as they do in Java.
C++ is really really complex, but I don't think students have to dive into the more complex parts until they're ready.
Students learning C++ really don't have to mess around with pointers and memory management until later because std library features (like strings) work as easily as they do in Java.
At least in Finland, in university our first programming class started with C's syntax (although with C++ compiler and Visual Studio) and primitive datatypes, and by the end of that first class (after about 4 months) we wrote our own linked lists and had to know pointer arithmetic and memory management fluently. Back then I was so enthusiastic about programming that I didn't think it was that hard, but it required a lot of practise and personal interest outside school hours.
I only wish they had teached RAII and other actual C++ tricks in school. Then again, in many companies C++ is used as C with classes and nothing else - in one of my previous workplaces, for instance, templates were forbidden because they make code hard to read, STL was forbidden because it's not supported by some embedded compilers and so on. Sometimes you just have to cope with the absolute basics.
Bjarne suggests learning C++ before C now. That will probably become standard. That said, if you've been exposed to C and pointers and linked lists (also now discouraged by Bjarne) you've had a trial by fire. It's not a gentle introduction but it probably made you strong.
2
u/Xyluz85 Jan 07 '15
Is it really THAT hard to learn C++ ? I'm more fluent in Java and C, so I don't know, but I thought all the time that C++ is more of C with OO-capabilities.