Adding c++ version