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

C++ Discussion :

Problême de compilation


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 62
    Par défaut Problême de compilation
    Salut tout le monde, j'ai un souci pour compiler ce bout de code et j'vois pas du tout d'où ça peut venir, faut dire que j'capte pas trop l'erreur :S

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    cmd_line.h
     
    #ifndef _CMD_LINE_H
    # define _CMD_LINE_H
     
    void parseCmdLine(int argc, char const * argv[], bool& reverse, int& step);
     
    #endif /* !_CMD_LINE_H */
    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
    25
    26
    27
    28
    29
    30
    31
    32
    cmd_line.cpp
     
    #include <iostream>
    #include <string>
    #include <vector>
    #include "view.h"
    #include "cmd_line.h"
     
    using std::cout;
    using std::endl;
    using std::string;
    using std::vector;
     
    void parseCmdLine(int argc, char const * argv[], bool& reverse, int& step)
    {
        if(argc == 1)
            cout << "pas de commandes !" << endl;
     
        else if(argv[2] == "-h" || argv[2] == "--help"){
            cout << "Usage: <nomprog> [option...]" << endl << endl
                << "Options:" << endl << "  -r, --reverse: views input lines backwards."
                << "  --step <step>: defines a strictly positive step between"
                << "                 displayed lines.  Defaults to 1 (one)."
                << "  -h, --help:    displays this usage info." << endl;
        }
     
        else if(reverse == true)
            cout << "on inverse" << endl
                << "avec un pas de " << step << " lignes" << endl;
        else
            cout << "on inverse pas" << endl;
    }
    L'erreur provoqué est la suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    g++ -O2 -Wall -W -Werror   -c -o cmd_line.o cmd_line.cpp
    cmd_line.h:14: error: expected initializer before 'void'
    make: *** [cmd_line.o] Erreur 1

  2. #2
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut Re: Problême de compilation
    Citation Envoyé par R'SKaP
    L'erreur provoqué est la suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    g++ -O2 -Wall -W -Werror   -c -o cmd_line.o cmd_line.cpp
    cmd_line.h:14: error: expected initializer before 'void'
    make: *** [cmd_line.o] Erreur 1
    Il n'y a pas 14 lignes dans le cmd_line.h que tu montres...

    Quelques remarques en passant:
    • il faut mieux reserver les identificateurs qui commencent par _ et ceux qui en contiennent deux au systeme;
    • les erreurs devraient plutot etre envoyee vers cerr
    • si tu ne modifies pas tes parametres (cas de reverse et de step) passe les soit par valeur (ce qui est tres bien pour des bool) soit par reference constante (bool const& ici)

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 62
    Par défaut
    En fait si y'a bien 14 lignes dans le .h c'est juste que j'ai retiré les commentaires.
    La ligne 14 est en fait celle où je defini la fonction.

    Sinon pour le .cpp il est trés loin d'être peaufiné, mais j'voulais déjà voir si ça compile...
    Mais est-ce que les erreurs que tu as relevé peuvent être la cause de la "non-compilation" ? c'est le .h qui est pas bon ?

  4. #4
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Citation Envoyé par R'SKaP
    En fait si y'a bien 14 lignes dans le .h c'est juste que j'ai retiré les commentaires.
    Si tu n'as vire que des commentaires, l'erreur est a la fin de view.h, vraissemblablement un ; qui manque.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 62
    Par défaut
    pfff... j'étais tellement persuadé que l'erreur était là que j'en ai oublié de voir dans le view.h

    En effet tu avais raison, j'te remerci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème de compilation sous visual C++
    Par fabmili dans le forum MFC
    Réponses: 4
    Dernier message: 08/02/2004, 19h52
  2. problème de compil devc++ socket
    Par stefdem dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 11/12/2003, 11h33
  3. Réponses: 1
    Dernier message: 29/10/2003, 12h16
  4. Problème de compilation de la DLL du XMLRad
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 2
    Dernier message: 16/04/2003, 16h46
  5. Réponses: 1
    Dernier message: 27/05/2002, 01h44

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