I learned to program from Programming: principles and practice using C++ by Bjarne Stroustrup. But be warned: it's a hard book. It took me two years to finish. Is it the best book for learning c++? Probably not. However, if you can make it through, you WILL have a solid understanding of the basics of programming.
I can't say I know the best book, but I read "C for Dummies" in two weeks and later took c++. This caused me to have some bad habits I needed to fix but I feel that any other way for me would have been harder. If there is a c++ for dummies book i would highly recommend it.
There is a "for Dummies" book for (quite literally) everything. Can't speak for the quality of their content, but after looking through a local book store a few months ago I'm certain that they have factories full of people who just write books on random topics all day.
See, writing a dummies book is like starting a farm. First you have to get some land, seeds, fertilizer, and a barn. Than you need to find a few people to work on it with you. After a year of work, you'll have fresh produce you can sell. Once your vegetables, grains, squash, and fruit get to the grocery store, it doesn't matter how much fertilizer or water you gave them, it's just tossed into a bin with all of the other products of the same category. As long as it has that little plaque in front of it with the name of the item, people will but it.
Personally, I find dummies books to just be filled with these idiotic "real-world" comparisons. I prefer more serious books without the little one panel gag comics and categorized notes, but I know people who do like them. But that's what libraries are for.