C 언어와 달리 C++의 주 함수 반환 유형은 void 또는 int일 수 있지만 C++ 설계자는 프로그래머가 주 함수의 반환 유형으로 int를 사용하는 것을 선호하므로 main이 실행됩니다. 완료 후에는 운영 체제에 프로그램 실행 상태를 알리기 위해 정수가 반환되어야 합니다. 일반 함수와 마찬가지로 정수인 한 return은 함수의 끝을 의미하며, main에서 정수를 반환한 후 메인 함수는 실행을 완료, 즉 프로그램 실행이 완료된다.
C++ 표준에서는 어떤 값을 반환해야 하는지 명시하지 않지만 일반적으로 0을 반환하면 정상 종료를 나타내고, 0이 아닌 값을 반환하면 비정상 종료를 나타냅니다. 그러나 일반적으로 0이 아닌 경우에는 - 1이 반환됩니다. 이는 C 언어의 exit(-1) 함수와 관련이 있을 수 있습니다. 결국 많은 C++ 프로그래머는 C에서 전환했습니다.