2010-11-28 6 views
0

Je possède ce code, mais quand je le compiler avec Borland Turbo C++, Turbo C++ dire:problème de la fonction C++,

Erreur filename.cpp 13: Appel de non-fonctionnement de la fonction main()

mon code est:

#include <iostream.h> 
int reload (int yes, int no) { 
    int reload; 
     cout << yes << no; 
     cin >> reload; 

    return reload; 
} 

main() { 
    int a, reload = 1; 
    while (reload == 1) { 
     reload (1,0); 
     cout << "Enter a number: "; 
     cin >> a; 
    } 

    return 0; 
} 
+2

Où avez-vous eu cette horrible, non conforme au code « C++ »? 'main()', sérieusement? Si cela vient d'un livre, brûlez-le ou enterrez-le immédiatement, cela ne vous apprendra que de terribles habitudes. – fredoverflow

Répondre

6
int a, av = 1, reload = 1; 

Vous avez nommé un reload variable qui cache la reload() fonction. Le compilateur pense que vous essayez d '"appeler" la variable int reload, donc "appel de non-fonctionnement".

Renommez la fonction ou la variable.

+0

Merci, et merci à tous! – mrdaliri

+0

Vous pouvez également utiliser :: reload() – kilotaras

1

Vous avez un intreload variable principale qui cache la reload fonction. Vous ne surchargez pas résolution entre les variables et les fonctions seulement entre différentes fonctions.

0

Vous avez une variable locale dans main appelée reload qui masque la fonction. Renommez votre variable locale et vous devriez être bien

1

Vous avez une variable locale et une fonction du même nom reload