64 votes

Eclipse CDT : Le symbole 'cout' n'a pas pu être résolu.

L'erreur est la même que ci-dessus. J'ai ce qui devrait être tous les fichiers nécessaires inclus dans le projet eclipse :

/usr/include/c++/4.6
/usr/include
/usr/include/linux
/usr/local/include

etc.

J'ai essayé std::cout y using namespace std; cout mais ça dit toujours non résolu.

J'ai importé iostream y cstdlib .

De plus, je suis sur Ubuntu 12.04 avec eclipse 3.7.2.

Extraits de code :

#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include "XPLMDisplay.h"
#include "XPLMGraphics.h"

int XPluginStart(char * outName,  char * outSig,  char * outDesc) {
    /* ... */
    std::cout << "test" << std::endl;
    /* ... */
}

en utilisant l'espace de noms std ;


UPDATE : J'avais créé le projet eclipse à partir d'un code existant. La création d'un nouveau projet c++ corrige le problème. J'accepterai une réponse qui explique quel paramètre dans le projet existant pourrait causer ceci (ainsi je n'ai pas à couper et coller tous mes projets).

0 votes

Avez-vous importé iostream ?

0 votes

Riight, quand on parle d'" importer " iostream, j'espère que vous faites en fait " #include <iostream> " puisque la notion d'importation de choses n'est pas tout à fait correcte en C++.

0 votes

@hmjd Je ne peux pas poster tout le code, mais un peu plus ne devrait pas faire de différence.

1voto

Bluebaron Points 356

Vous regardez dans la mauvaise section. J'ai réalisé la différence lorsque j'ai installé Linux après avoir été récemment frustré par Windows et la différence était immédiatement apparente.

Dans la nouvelle configuration, j'ai un dossier includes dans un projet que j'ai créé à partir d'une source existante. Je peux le développer et voir une tonne d'inclusions, mais je ne peux pas en ajouter. Cela m'a conduit à rechercher l'endroit où ces fichiers étaient répertoriés.

Ils sont listés dans les Propriétés du projet > C/C++ Général > Inclus dans le préprocesseur > GNU C++. Paramètres du compilateur intégré CDT GCC [Partagé]. En dessous, il y a une tonne d'inclusions.

Ces paramètres sont définis par la chaîne d'outils que vous avez sélectionnée.

1voto

Guy Avraham Points 1264

J'ai créé le projet Makefile en utilisant cmake sur Ubuntu 16.04.

Lorsque j'ai créé le projet eclipse pour les Makefiles que cmake a généré, j'ai créé le nouveau projet comme suit :

Fichier --> nouveau --> projet Makefile avec le code existant.

Ce n'est qu'après avoir fait cela plusieurs fois que j'ai remarqué que le paramètre par défaut pour la "Toolchain for indexer settings" est aucun. Dans mon cas, je l'ai changé pour Linux GCC et toutes les erreurs ont disparu.

J'espère que cela vous aidera et faites-moi savoir si ce n'est pas une solution légitime.

A la vôtre,

Guy.

1voto

DBedrenko Points 2494

Cela s'est produit après avoir mis à jour gcc et eclipse sur ArchLinux. Ce qui a résolu le problème pour moi est Project -> C/C++ Index -> Rebuild .

0voto

Francky_V Points 437

Je ne fais qu'ajouter un autre conseil après avoir essayé un tas de trucs moi-même et que cela ne fonctionne pas.....

J'avais installé GCC et le chemin vers les includes était correctement défini. J'ai également eu l'erreur std, et je n'ai pas pu faire fonctionner quoi que ce soit pour cout (et je soupçonne quoi que ce soit dans le SL...).

J'ai mis du temps à réaliser que g++ n'était pas installé - gcc l'était mais pas g++. Alors faites-le :

sudo apt-get install g++

Redémarrez l'éclipse. En supposant que les détails mentionnés ci-dessus au sujet de gcc et des chemins vers les inclusions sont corrects, vous devriez être en ordre maintenant...

0voto

Sanjay Points 314

Le mien était assez facile à comprendre clic droit >exécuter sous>exécuter la configration

cases à cocher include system lib,inherited mains

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X