for the learning of c++