2 versions valides de main()
existent dans C++
:
int main() // version 1
int main(int argc, char **argv) // version 2
Mais les deux surcharges ne peuvent coexister en même temps. Pourquoi pas ? (Cas d'utilisation potentiel : lors de l'exécution du programme à partir du terminal, si aucun argument n'est passé, la première version est appelée, sinon la seconde).
Le compilateur effectue-t-il une vérification spéciale pour n'autoriser qu'une seule version par binaire ?