data structure using cpp