I'm talking about Flow of Control, Functions, Parameters, overloading, arrays, classes, Pointers and dynamic data structures,exception handling, operator overloading and perhaps including linked data structures.
I am not liking the programming exercises the book has at the end of each chapter. But I will have to program something to really know it. Anybody ever taught himself this? Any advice on how to approach this? If I have to, I will just do the book exercises. I would appreciate any input!
Thank you

You really need two more things:
1) A mentor
2) A real project

Nothing teaches like a real project where someone else will be looking at your code.
A mentor can lead you through the quirky things that will never be explained in a book.

lol. Well, I don't have one and I think I can do it without one. And I don't think there's much difference between a project and an assignment for each topic. I think that will do it, too. I could ask someone though if I run into problems.

There are plenty of C++ tutorials on the Internet. The challenge is, if you think like most people do, you won't internalize a concept until you see a need for it. In C++, this is tricky, especially if you're an experienced C programmer. You have to conceptualize a real need for the things that C++ does for you. Otherwise, you're likely to end up using a C++ compiler to (mostly) write C code.

But it can't hurt to try an online tutorial or two. A bit of google searching should find you more than you'll need.

The best way to really -learn- a programming language is (as thines01 said) to think of something you want to program, and then program it. The exercises at the end of each chapter of a book may seem lame, but they're designed to reinforce the concepts introduced in that chapter. Do them! If they're too boring, at least try to do a couple of the hardest-sounding ones before proceeding to the next chapter. And you can probably skip the exercises from the first couple of chapters entirely, and just refer back to the relevant sections as needed when you start a more interesting exercise later on.

A warning, however: from participating in the DaniWeb forums for a few months now, I'd say a recurring problem is relative beginners embarking on seriously hard projects -- a fully-generalized equation-solver comes to mind: one poster wanted the user to be able to enter things like "5 + n * 2 = 9" (with whitespace optional except where needed to avoid ambiguity, possibly including parentheses, and so on), and have his program correctly determine which symbols were operators, which were constants and which were variables, and then solve for a variable in terms of the constants (and other variables, if any). It doesn't sound so impossible until you think of it in terms of writing an interpreter for a relatively simple "computer-language" of mathematical expressions. I haven't had much need for writing my own computer-languages in the past 25+ years of academic and professional experience, and the one I did write was to handle scripted input for a very simple C-library of functions, and it was entirely brute-forced with a big if-then-else structure!

This article has been dead for over six months. Start a new discussion instead.