add C++ source