Thinking in C++ : Practical Programming - ECKEL (Bruce) (LONDON PEARSON)