web-dev-qa-db-fra.com

Eclipse C++: le symbole 'std' n'a pas pu être résolu

Je reçois cette erreur dans TestExecute.cpp - 

"Le symbole 'std' n'a pas pu être résolu"

CODE

#include <iostream>
using namespace std;

Je viens de créer un projet exécutable dans Eclipse (sous Windows 7), comme indiqué ci-dessous. Il semble que je sélectionne une chaîne d’outils non prise en charge. Est-ce vrai? J'ai installé Cygwin et il est disponible dans les préférences.

EDIT: Basé sur le commentaire @RobertoWilko, supprimant la ligne "using namespace std; " supprimé l'erreur. Mais le binaire n'est pas créé. "Échec du lancement. Binaire introuvable". Comment corriger cela?

enter image description here

enter image description here

enter image description here

enter image description here

25
Lijo

Essayez cette étape: https://www.Eclipse.org/forums/index.php/t/636348/

Fondamentalement: l'argument de ligne de commande -std = c ++ 11.

17
user3729779

Je ne sais pas si vous avez résolu ce problème, mais je souhaite publier ma solution car ceux-ci pourraient être confrontés au même problème.

  1. Tout d’abord, assurez-vous que vous avez le dossier "Inclut" dans votre Explorateur de projets. Si vous ne l'avez pas, passez à la deuxième étape. Si vous en avez, passez à la troisième étape.

  2. Deuxièmement, Fenêtre -> Préférences-> C/C++ -> Construire> Environnement : Créez deux variables d’environnement:

    a) Nom: C_INCLUDE_PATH Valeur: /usr/include

    b) Nom: CPLUS_INCLUDE_PATH Valeur: /usr/include/c++

Allez à Cygwin/usr/include/, si vous ne trouvez pas le dossier "c ++", copiez-le à partir de \cygwin\lib\gcc\i686-pc-cygwin\X.X.X\include et redémarrez votre Eclipse.

  1. Troisièmement, faites un clic droit sur votre projet dans Explorateur de projets -> Propriétés -> Général C/C++ -> Chemins et symboles -> Inclut -> Langues: GNU C++ . "répertoires", puis cliquez sur Appliquer et sur OK. Changez un peu vos codes et sauvegardez-les. 

Vous constaterez qu'il n'y aura pas de symbole ne pourrait pas être résolu problèmes. 

J'ai documenté ma solution en espérant que quelqu'un pourrait en tirer des avantages.

14
Frank

Vous pouvez réécrire le code comme ceci:

#include<iostream>
#include<stdio.h>

using namespace std;
6
liuzixing

Pour MinGW, cela a fonctionné pour moi:

  • Faites un clic droit sur le projet, sélectionnez Properties
  • Passez à C/C++ General - Paths and Symbols - Includes - GNU C++ - Include directories
  • Sélectionnez Add...
  • Sélectionnez Variables...
  • Sélectionnez MINGW_HOME et cliquez sur OK
  • Cliquez sur Apply et OK

Vous devriez maintenant voir plusieurs chemins MinGW dans Includes dans l'explorateur de votre projet.
Les erreurs peuvent ne pas disparaître instantanément, vous devrez peut-être actualiser/construire votre projet.


Si vous utilisez Cygwin, une variable équivalente peut être présente.

4
Myst

Ce qui m'a permis de résoudre le problème était d'aller dans: Projet -> Propriétés -> Général C/C++ -> Chemins d'inclusion de préprocesseur, macros, etc. -> Fournisseurs -> Paramètres du compilateur intégré CDT GCC, permettant ainsi de désactiver le CDT. Paramètres du compilateur intégré Cross GCC

3
Malcolm Boyd

Le dossier includes du projet est probablement manquant /usr/include/c++. Allez à votre projet dans l'explorateur de projets, faites un clic droit -> Propriétés -> C\C++ Build -> Environnement -> add -> value =/usr/inclure/c ++. Redémarrez Eclipse.

3
Meera Patil

Installer le SDK C++:

Aide> Installer un nouveau logiciel> Utiliser: path for your Eclipse version> recherchez C++ et installez les outils de développement C++ sdk.

Exemple pour un chemin: Mars - http://download.Eclipse.org/releases/mars

1
Alaa M.

J'avais ce problème en utilisant Eclipse Neon sur Kubuntu avec un noyau 16.04, je devais changer mon #include <stdlib.h> en #include <cstdlib> cela rendait l'espace de nom std "visible" à Eclipse et supprimait l'erreur.

1
Col_Parity

Le problème que vous signalez me semble causé par ce qui suit:

  1. vous essayez de compiler du code C et que le fichier source a une extension .cpp
  2. vous essayez de compiler du code C++ et que le fichier source porte l'extension .c

Dans une telle situation, Eclipse ne peut pas reconnaître le compilateur à utiliser.

0
federico