Design pattern C++ description