Ähm... weisst du eigentlich was du tust?
.cpp sind fgw. deine Quellcodedateien, keine compiles.
Diese compilierst du, dann linkst du die entsprechenden erstellen Objekte und DANN erhälst du eine executable - deine .exe, wie du das ding nennst oder speicherst ist dir überlassen.
setz mal vor dein "return 0;" ein getch(); und schau was dann passiert.
getch() wartet auf tastatureingabe,
return 0; gibt den Wert 0 aus deiner Mainfunktion zurück. Ich vermute dein Programm tut alles was es soll, es terminiert auch korrekt und daraufhin wird deine Konsole geschloßen.
Quelltext hab ich nicht gelesen, dafür war ich zu faul.