In my experience, I find it helps to know what you are aiming for. If you only want a basic knowledge of the syntax and semantics, then an online tutorial will be enough. Try
http://www.programmersheaven.com for a bunch of tutorials that can help you there. Bruce Eckel's "Thinking in C++" is pretty good. Takes you through the language quite comprehensively. If you're looking for programming style (which will definitely help later on), check out Tomasz Muldner's "C++ With Design Patterns Revealed". Nice reference for beginners, and it quickly moves onto making life easier using design patterns.
If this is your first language, it might be a good idea to look into a different language (Bruce Eckel recommends Python as a decent starting language). The reason is that many people find the STRICT, STRICT rules of C++ incredibly distracting when first learning to program. As a result, you start to dislike programming (thinking of it as a tedious task) and you start finding creative ways to get around the conventions that are there for a reason (simply to make your life easier). There's nothing wrong with making your life easier, but in C++, it usually happens because of laziness. A better way to make life easier is to switch to Python.
There's plenty of debate as to which language is best, but the gist of what I've read implies that the best language is specific to the particular application and situation. If you need uber runtime speed, then C++ would be worth using (but why stop there? You COULD go lower-level

). Otherwise, I'd recommend trying out an interpreted language first (Python's nice and comes with awesome documentation).