4 ms·
> I even learned Java before giving C++ a try I must admin from all the stuff I saw on the internet I am now scared even try to learn C++. I think it is the lo
by rimantas 13y ago
> I even learned Java before giving C++ a try
I must admin from all the stuff I saw on the internet I am now scared even try to learn C++. I think it is the looks as a least desireable language to learn for me. Which sucks a bit because there is position at a company I wouldn't mind work for.
- nnq 13y agoLearn C first! You'll understand why C++ is what it is and you'll also get the skills needed to contribute in a lot of open-source projects.
- pjmlp 13y agoPlease don't! Learn Modern C++ instead, otherwise you will be damaged with Cisms in C++ land.
- rbanffy 13y agoWould you like to elaborate on that?
- pjmlp 13y agoThere are lots of C constructs that are considered bad practice in C++ - null terminated strings - plain vectors - manual management of resources (memory, files, db connections, locks...) - C style casts - pre-processor instead of using inline/const/templates - the C subset of C++ it is also not 100% compatible with C, there are a few cases with different semantics - since C99, new language constructs are added via macros, instead of keywords - no use of namespaces - lack of safety of parameters that can be changed (pointer vs reference parameters) The best way to learn C++ is to read books like "Modern C++ Design", "Programming -- Principles and Practice Using C++" and the recently published "Tour of C++".
- swift 13y agoI have to take issue with your inclusion of "Modern C++ Design" in a reading list about learning C++. If you're new to C++, that is exactly the sort of thing you _shouldn't_ be reading. "Modern C++ Design" is really intended for advanced C++ programmers only. I don't feel it gives a very good impression of the language to new developers - there are so many awful hacks in that book. It's the sort of thing that you should hold off on until you have the experience with the language necessary to be wise about when such techniques are appropriate.
- weland 13y agoI'll second nnq's opinion. Quite a few of C++'s quirks are the way they are because of the C in its name.
- rbanffy 13y agoIt's not a bad language and learning it will teach you a lot of very important concepts. My advice is to master C first, then to wrap your brain around C++. But, again, there may be other languages more worthy of your effort. I only leaned Java before touching C++ again because of my peculiar introduction to OOP and because I discarded the language after considering it an inelegant kludge, but, compared to Smalltalk, what language isn't? And, finally, I decided to swallow my pride and learn C++ because I wanted to be part of the Brazilian electronic voting system projecy. Now, every ballot runs some C++ code I wrote. If the company is that cool, give it a shot.