Help string c++

Résolu
Bonjour,
je suis entrain de faire une recherche sequentielle ,et j'ai un pbleme,voici une partie de mon programme

int Class::RechercheSequentille() const{

int i=0,ind=-1; string Nom; int encoreAvant; bool trouve=false;

cout<<"Veuillez saisir le nom que vous voulez rechercher\n";
getline(cin,Nom)

do{

trouve=(_tab[i].getNom()== Nom);
i++;
encoreAvant = (strcmp(_tab[i].getNom().c_str , Nom)<0); //la ligne qui contient l'erreur
//getNom() retourne un nom sous forme de string

}while(encoreAvant && i<N);

if (trouve){ ind=i; }

return(ind);

}


l'erreure que j'ai est (no matching function for call to strcmp(<unknown type,std::string&>))
si qql pourrait m'aidez je serais tres reconnaissante
merci

4 réponses

  1. merci beaucoup pour ta reponse,ca marche tres bien
    0
    1. strcmp(_tab[i].getNom().c_str() , Nom.c_str())

      (J'avais pas vu les parenthèses manquantes le premier coup ^^")

      OU, à la C++

      bool bAvant;
      
      bAvant = ( _tab[i].getNom() < Nom );

      ^
      Vérifie le sens du test que tu souhaites, ici, vrai si ( _tab[i].getNom() ) est avant Nom dans ordre alphabétique

      M.
      0
      1. merci pour ta reponse ,mais que dois-je faire?
        merci
        0
        1. Salutations Wiam,

          Le compilo ne trouve pas de fonction strcmp qui prenne comme paramètres les tiens.
          Le "unknown type" est bizarre.
          Le problème vient du second paramètre: une référence vers un std::string ce qui est en effet le type de Nom

          Je te laisse corriger. (Cependant strcmp c'est du C, pas du C++)

          M.

          PS:
          Il existe des balises spécifiques pour insérer du code sur le forum, (à côté du souligner) elles ont l'avantage de garder l'indentation.
          0