graph cpp