I know I am jumping in this kind of late, but I would NOT learn java or C# before C++.
You will learn bad C++ habits by starting with either one of them. When you switch to C++ you will leave memory leaks everywhere. Start with C/C++. I would skip a C book as a beginner C++ book will cover most of what you will learn in a C one, then get in to OOP.
Managed Languages (C#, Java, J#, etc) are very good for web apps and low performance requirement windows apps. C# is what I use for the majority of my projects at work (I am a Software engineer,)
But...
The game engine I am writing is all in C++.
FYI the order I learned in was:
BASIC
QBASIC
C/ASM
Pascal
C++
Java
C#
I am a Gauntlet Adventurer. I strive to improve my living conditions by hoarding gold, food, and sometimes keys and potions. I love adventure, fighting, and particularly winning - especially when there's a prize at stake. I occasionally get lost inside buildings and can't find the exit. I need food badly. What Video Game Character Are You? |
Mega Man 9 Challenges: 74%
Waltz | Tango | Jitterbug | Bust a move | Headbanging |
Bunny Hop | Mr. Trigger Happy | Double Trouble | Mr. Perfect | Invincible |
Almost Invincible | No Coffee Break | Air Shoes | Mega Diet | Encore |
Peacekeeper | Conservationist | Farewell To Arms | Gamer's Day | Daily Dose |
Whomp Wiley! | Truly Addicted! | Truly Hardcore! | Conqueror | Vanquisher |
Destroyer | World Warrior | Trusty Sidearm | Pack Rat | Valued Customer |
Shop A Holic | Last Man Standing | Survivor | Hard Rock | Heavy Metal |
Speed Metal | Fantastic 9 | Fully Unloaded | Blue Bomber | Eco Fighter |
Marathon Fight | Quick Draw G | Quick Draw C | Quick Draw S | Quick Draw H |
Quick Draw J | Quick Draw P | Quick Draw T | Quick Draw M | Quick Draw X |