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

SL & STL C++ Discussion :

STL - FIND not FOUND


Sujet :

SL & STL C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 11
    Par défaut STL - FIND not FOUND
    Bonjour tout le monde,

    alors mon erreur est toute simple, et à priori il s'agit d'une mauvaise installation de gcc ... mais j'aime bien voir vos reflexions :




    [root@localhost mar]# gcc --version
    gcc (GCC) 4.3.0 20080416 (Red Hat 4.3.0-7)
    Copyright © 2008 Free Software Foundation, Inc.
    Ce logiciel est libre; voir les sources pour les conditions de copie. Il n'y a PAS
    GARANTIE; ni implicite pour le MARCHANDAGE ou pour un BUT PARTICULIER.

    [root@localhost mar]# cat test.cc
    #include <iostream>
    #include <vector>

    using namespace std;

    int main(int argc, char* argv[]){
    vector<int> v;

    v.push_back(10);
    vector<int>::iterator it=find(v.begin(),v.end(),10);
    if(it != v.end())
    cout<<"bon";
    else
    cout<<"pas bon";
    }
    [root@localhost mar]# gcc test.cc
    test.cc: In function ‘int main(int, char**)’:
    test.cc:10: erreur: no matching function for call to ‘find(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, int)’
    [root@localhost mar]#




    qu'est ce que vous en penez ?

    merci d'avance,

  2. #2
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    Que comme le dit le message, tu n'as défini aucune fonction find qui matche avec les arguments.
    Peut-être souhaitais-tu utiliser std::find. Dans ce cas, inclus l'entête <algorithm>.

    Sinon, à part, ça, utilise g++ et pas gcc. Sinon ça va pas linker libstdc++ et libm.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 11
    Par défaut
    bonjour et merci pour la réponse,

    je pensais que gcc appel le "bon" compilateur en fonction de l'extension des fichiers (ce n'est pas le cas). maintenant ça marche ... même avec un

    #include <bits/stl_algo.h>

    mais j'avoue c'est beaucoup plus tordu.



    excellente journée,

  4. #4
    Membre éclairé
    Avatar de Le Farfadet Spatial
    Homme Profil pro
    En cours de précision…
    Inscrit en
    Avril 2008
    Messages
    190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : En cours de précision…

    Informations forums :
    Inscription : Avril 2008
    Messages : 190
    Par défaut
    Salut à tous !

    Pour gcc, en fait tu peux l'utiliser pour compiler du C++, mais il faut lui dire de lier les bonnes bibliothèques, ce qui fait des lignes de commandes à rallonge. D'où l'existence de g++.

    Citation Envoyé par mbelaoucha Voir le message
    #include <bits/stl_algo.h>

    mais j'avoue c'est beaucoup plus tordu.
    Ça, oui, c'est tordu ! Pourquoi ne pas utiliser l'en-tête standard :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    #include <algorithm>
    À bientôt.

    Le Farfadet Spatial

  5. #5
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    je pensais que gcc appel le "bon" compilateur en fonction de l'extension des fichiers (ce n'est pas le cas).
    Si si, ça appelle bien le bon compilateur, mais comme je l'ai déjà dit, ça linke pas libstdc++ et libm, ce que fait g++.

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

Discussions similaires

  1. [jsp] property not found??
    Par champion dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 03/01/2005, 17h56
  2. requested URL /forms90/f90servlet was not found
    Par Aeternus dans le forum Oracle
    Réponses: 11
    Dernier message: 03/02/2004, 16h45
  3. Attribute .... not found !?
    Par YanK dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 08/10/2003, 10h27
  4. TXMLModule.create - name = resource not found
    Par pram dans le forum XMLRAD
    Réponses: 2
    Dernier message: 04/03/2003, 10h54
  5. Component not found
    Par Pm dans le forum XMLRAD
    Réponses: 2
    Dernier message: 28/01/2003, 14h40

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