web-dev-qa-db-fra.com

'cout' n'a pas été déclaré dans cette étendue

J'ai un programme C++:

test.cpp

#include<iostream>

int main()
{
    char t = 'f';
    char *t1;
    char **t2;
    cout<<t;    //this causes an error, cout was not declared in this scope
    return 0;
}

Je reçois le error:

'cout' n'a pas été déclaré dans cette étendue

Pourquoi?

60
user494461

Placez le code suivant avant int main():

using namespace std;

Et vous pourrez utiliser cout.

Par exemple:

#include<iostream>
using namespace std;
int main(){
    char t = 'f';
    char *t1;
    char **t2;
    cout<<t;        
    return 0;
}

Maintenant, prenez un moment et lisez ce qui est cout et ce qui se passe ici: http://www.cplusplus.com/reference/iostream/cout/


De plus, bien que rapide et efficace, ce n’est pas vraiment un bon conseil que d’ajouter simplement using namespace std; en haut de votre code. Pour une approche correcte détaillée, veuillez lire les réponses à cette question connexe SO .

98
rafalon

Utilisez std::cout, puisque cout est défini dans l’espace de nom std. Vous pouvez également ajouter une directive using std::cout;.

35
Andy Prowl