C++ templates the complete guide - Vandevoorde, David; Josuttis, Nicolai M. 1962- (Addison-Wesley, 2003)