C++ DesginPatter Learing example