   C to C++
  Hello, I tought myself to program using the C language but now I'm trying to extend on to my knowledge and so, I decided to start learning C++.Already though I feel overwhelmed by all the new comcepts especially when dealing with OOP. There are just so many more "features" than there are in the C language that I'm getting confused. What do you guys think, should I keep learning C++ or should I just stick to good old C?   
  If you're learning C++ to get your feet wet with OOP, consider a language other than C++. C++ is only so-so at object oriented programming, and it's so full of inelegancies and gotchas that it may well lead you to develop an irrational hatred of OOP. If you want an OO language to Expand Your Mind and also that'll be useful to you as a programmer, and aren't dead-set on C++, check out Smalltalk or Ruby.   ;  You've had C as your base programming language, that pretty good.You next destination is definitely C++, check out   For Beginners - Noteworthy threads  for tutorials.Good luck.   ;  Or Java. Or Python. But if you're set on C++, may I recommend this book?;Quote:Original post by lightbringerOr Java.Good point; I really should have mentioned that one. Java's a little less badass (from an OOP perspective) than Ruby, but it's also an industry standard and thus is more likely to be directly useful to you as a language, as well as being a decent learning experience.   ;;  The following link might interest you (Pay special attention to the left side of the page):http://www.informit.com/guides/content.asp?g=cplusplus&seqNum=4If you decide to go the Java route, you'll be losing the potential for any operator overloading, a very useful tool WHEN USED PROPERLY.   ;Quote:Original post by Anonymous PosterIf you decide to go the Java route, you'll be losing the potential for any operator overloading, a very useful tool WHEN USED PROPERLY.IMHO operator overloading is overrated. Sure, it adds some readability, but it's not a holy grail for anything.;  You should switch to Java to learn about OO.Then come back to C++ and learn about templates and such.;Quote:Original post by nmiYou should switch to Java to learn about OO.Then come back to C++ and learn about templates and such.This statement is quite entertaining, given that Java is a poor OO language and C++'s templates are a poor implementation of the concept.Learn [C|C++|Java|Python|Ruby|Perl|O'Caml|Eiffel|<your language here>] because you want to learn that language, and because you want to broaden your knowledge of how various programming concepts are expressed in various languages. Period.   