programming 2 evidence cpp