Programming: Principles and Practice Using C++ - Bjarne Stroustrup