Bardziej chodzi o przysłanianie, jeżeli nazwa jest "zdublowana", oraz możliwość "nie kontrolowanego" pomyłkowego nadpisania jej wartości w innym miejscu programu [procedurze]. Możliwe, że nie wszystko tam: https://pl.wikipedia.org/wiki/Zmienna_globalna7 będzie tam dla Ciebie zrozumiałe, ale może choć częściowo Ci naświetli problem? Na pewno, jest też więcej źródeł na ten temat.
Przy tak małym programie - tylko jedna funkcja main() - może to nie problem, ale warto się przyzwyczajać i stosować dobre praktyki programowania.
W C++ kompilator sam, gdy brak return 0, to uzupełnia, więc nie ma potrzeby stosoowania ani zastępowania innymi możliwościami [np exit 0, brk itd].