more work on c++