I am beginner, I have no understanding of programming besides wanting to learn it. I have started using Xoax.net as a starting point. My question is are there any books out there that I can use along with the tutorials provided on that webpage? I know that there are MANY books out there about C++, but I have read that some teach bad "habits" and I would hate to pick up those habits. Can anyone recommend me books?
I would recommend getting two books when first beginning learning C++, here are the two I suggest
C++ Primer the 4th Edition by Stanley Lippman, Josee Lajoie, Barbara E. Moo
And
Accelerated C++ Practical Programming by Example by Andrew Koenig and Barabara E. Moo.
Both of these I have read when I first started out learning C++ and are very good book. Accelerated C++ is a faster paced book, by that I mean they jump right into it and you get to program some cool things fairly quickly. And C++ Primer is a comprehensive book that will go into depth on each topic.
The reason I say you should get 2 book is because it always helps to cross reference things. Like lets say you don't understand something the way it is stated in a certain book, this way you can always go to the other book and see if their way of teaching it clicks for you.
What I did with these two book is read Accelerated C++ all the way through and used the Primer for a reference for things I didn't understand or things I needed to know more about since it goes into more detail on each subject. Both book have good exercises in them and their are answer keys on the web for them.
Now my last point is you don't really need a book to learn how to program (It can help for a lot people though) all you need is to stick with it and jump in and program all you can. You get a lot more experience from actually programming then from reading words from a book. Wish you the best of luck.
I have read nothing but great things about those two books. My question is why should I not get the 5th edition of C++ Primer? Also, what do you think of the book called C++ Primer Plus?
As for C++ Primer the 5th Edition, I have not read this one so I can not comment on how good the book is and if it follows good practices. But since it is written by the same authors as the 4th Edition which are great authors, and it probably is more up to date then the 4th edition I would go with it instead. I can't really comment on C++ Primer Plus because I have never read it.
I currently have 3 books that I'm reading. C++ Primer Plus by 6th Ed. by Stephen Prata, C++ Primer 5th Ed. (which Zereo mentioned) and Beginning Visual C++ 2010 by Ivar Horton.
The C++ Primer Plus is good (though some others have linked to reviews of it that aren't that good, I don't agree with the reviews really.) The coding examples are pretty easy to follow and it has great review questions (with actual answers in the back, which the other 2 don't have) and even practice coding problems.
C++ Primer is great in it's depth and the fact that it is well layed out, material wise, and it uses alot of up to date code in really neat ways (first book I've seen to make wide use of auto.) Unfortunately, it is also very dry and compact which makes some of the code examples harder to follow since they don't include previous examples that would flesh the bits out some. Also, even though it has review questions, I have yet to find anywhere that has the answers. One thing I don't like about this book is that he uses a lot of C-style strings when string objects would have worked as well or better. Others may chime in with why they don't like this book and believe it warrants the negative reviews I've read, but I haven't seen anything flat out bad about this book yet.
BVC++ 2010 is also very good I believe because, like C++ Plus, it has complete code examples for almost everything. It's not as up to date on the C++11 standard but does have a fair bit of it. It also has a lot of MSVS help in it which is why I got it. And it adds in CLI coding as well. That can be a plus or a minus, for me I could care less and that extra space does take away from the depth of native C++ material covered, but between the other 2 books I have that's not a big deal honestly.
Like Zereo said, the C++ Primer is great for reference used in conjunction with another book. It can be used on its own, for sure, and you'll get alot out of it, it just will take more work to do so.