IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Dev-C++ Discussion :

débutant en compilation


Sujet :

Dev-C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Décembre 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 22
    Par défaut débutant en compilation
    Salut à tous,
    J'ai un programme écrit en c++. Je le compile avec dev-c++ pour avoir l'exe.
    Je suis bloquée sur un problème de compilation. Disons que j'ai cette ligne :
    [CODE]
    typedef hash_multimap<int, pair<int,vector<unsigned short>>> HashClosed; /CODE]
    A la compilation de cette ligne, j'obtiens les messages suivants:
    expected init-declarator before '<' token
    expected `,' or `;' before '<' token
    J'ai besoin de pour votre aide.
    Merci

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 126
    Par défaut
    bonjour,

    Pour répondre à des besoins de conformités (je crois ?) au standard C++, hash_multimap a été déplacé de l'espace de nommage std à l'espace de nommage stdext.
    Voir à ce sujet, ce lien :
    http://msdn.microsoft.com/en-us/libr...86(VS.80).aspx

    Du coup, il faut bien référencer stdext.

    Le code suivant devrait compiler :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    #include<hash_map>
    #include<vector>
    
    //using namespace std;
    //using namespace stdext;
    
    typedef stdext::hash_multimap<int, std::pair<int,std::vector<unsigned short>>> HashClosed;
    Cordialement,
    A.

  3. #3
    Membre averti
    Inscrit en
    Décembre 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 22
    Par défaut
    Bonjour,
    Mon code contient déjà un fichier header appelé misc.h, contenant les standards <map> et <hash_map> et using namespace std;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    #ifndef misc_H
    #define misc_H
     
    #include <iostream>
    #include <fstream>
    #include <sstream>
    #include <string>
    #include <algorithm>
    #include <functional>
    #include <vector>
    #include <list>
    #include <iterator>
    #include <map>
    #include <hash_map>
    #include <set>
    #include <queue>
    #include <stack>
    #include <algorithm>
    #include <cmath>
    #include <ctime>
    #include <utility>
     
    using namespace std;
    Et le fichier contenant le pb de compilation est celui ci cet.h :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    #ifndef CET_H
    #define CET_H
    #include "misc.h"
    typedef map<unsigned short, TreeNode> Family;
    typedef hash_multimap<int, pair<int,vector<unsigned short> > > HashClosed;
    Le compilateur se bloque à la ligne
    #include <hash_map>
    et renvoie le messagehash_map: No such file or directory.

    puis à la ligne
    typedef hash_multimap<int, pair<int,vector<unsigned short> > > HashClosed;
    et renvoie le message expected init-declarator before '<' token
    expected `,' or `;' before '<' token

    J'ai essayé avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    using namespace stdext;
    typedef stdext::hash_multimap<int, std::pair<int,std::vector<unsigned short>>> HashClosed;
    mais le compilateur ajoute d'autre erreurs comme expected namespace-name before ';' token
    `<type error>' is not a namespace

    Je serais reconnaissante pour votre aide.
    Merci

Discussions similaires

  1. [Débutant] Configuration compiler Netbean 3.5.1
    Par olly dans le forum NetBeans
    Réponses: 3
    Dernier message: 09/01/2007, 14h10
  2. Débutant Eclipse compilation sans main
    Par Bba_M dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 15/06/2006, 18h28
  3. Débutant Eclipse compilation sans "main"
    Par Bba_M dans le forum Eclipse Java
    Réponses: 7
    Dernier message: 08/06/2006, 21h52
  4. [Débutant] problème compilation
    Par Clark dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 19/05/2006, 09h14
  5. [Débutant]Erreur compilation !
    Par gandalf_le_blanc dans le forum AWT/Swing
    Réponses: 23
    Dernier message: 30/08/2004, 14h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo