Object Oriented Design Pattern of C++