C++ p2 complete