Eckel B. Thinking in C++. Introduction to Standard C++