Accelerated C++ Practical programming by example - Koenig, Andrew (Pearson Education, 2009)