Object-oriented Programming with C++