Please recommend some C++ books

lazzygee

Newcomer
Hi there!

Sorry if i put this in the wrong forum, couldn't find a more appropriate one. Also sorry if this question has already been asked.

I know some early basics of C++ like writing a simple command line calculator or various if, while statements but I don't understand some of them completely. It is very important to me to absolutely know why "this is the way it is". I am (at least i think so) not acomplete newbie at this so I really don't need a book which explains how to make a "Hello World!" program on 3 pages. But i really want a straight forward book which explains every bit of info about things used in the Hello World program (just an example). To make this a little more clearer - almost every book starts with a very simple program which has int main() in it. But I have yet to find a one which explains why you have to type int before main. Some evern start with void main() but they tell you 50 pages further that void main() should actually be int main(). Some books cover this kind of info later on in the book, but this is (in my opinion) disturbing because you start with something and just type whatever is in the book and read through 100 pages but you don't even know exactly why it's there. It's almost like keeping this info away from the reader while I think that the reader should be comfortable with everything he's working on.

I hope you understand what I mean. In my ideal world I would have Bjarne Strousrup sitting near me and explaining me why exactly do I have to do this and that :)

I've read quite a bit of that "Learn C++ in 21 days" ebook (not that good if you ask me) and some 2 or three others but i don't want to go any further untill I am completely satisfied with my learning. The best I found till now is "How to think like a computer scientist - C++" but it lacks some stuff.

I hope I make any sense if not I will try to explain it in some other way.

btw: I prefer if the book is ~5 years old at most. But it's not a requierment.


Thanks!

edit: I asked about C# in another thread - I have decided to learn C++ first because the school I'm will be going to has classes only for C++ and learning 2 languages at the same time is a little too much for me atm.
 
Well I have found the "C++ Master Reference" very useful myself. It has all the key words and standard functions with some explanation and a sample listing. It also covers key concepts such as inheritance, polymorphism, etc... It's certainly different from all the c++ in 21 days/c++ for dummies etc... type of books and great if you know how to get a program running but need specific info on how to do things.
 
Well I have found the "C++ Master Reference" very useful myself.
I have that one and have found myself googling most of the time instead of using it... Can't really recommend it if the computer one is working on has internet access. (IMO)
 
A bit older favorite (And what I think is an excellent book) is C++ How to Program by Dietel and Dietel.
 
C++, by the cord

PeterT's recommendations are very good. Those are must-haves.

I would also recommend:
Ruminations on C++: A Decade of Programming Insight and Experience
by Andrew Koenig, Barbara E. Moo, Barbara E. (Editor) Moo
and really anything by Koenig.

C++ Gotchas: Avoiding Common Problems in Coding and Design
by Stephen C. Dewhurst
is worthwhile.

Beyond Effective STL you will also want something like:
1) STL Tutorial and Reference Guide: C++ Programming with the Standard Template Library (2nd Edition)
by David R. Musser, Gillmer J. Derge, Atul Saini
2) The C++ Standard Library: A Tutorial and Reference
by Nicolai M. Josuttis

When I want make friends bleed from the ears, and also crash and burn their compilers (poor usloth visaul C++) I recommend:
Modern C++ Design: Generic Programming and Design Patterns Applied
by Andrei Alexandrescu
(mmmm template metaprogramming)

Also any of the books from Mr. Herb Sutter are good.

Hmmm, only graphics books have more of my shelf footage than C++ :), and it's close
 
Back
Top