Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series)
UML and C++: A Practical Guide to Object-Oriented Development (2nd Edition)