Thinking in C++. - Eckel, Bruce. (Prentice Hall,, 2004)