Bonjour,

Voila ce que j'ai fait :

Fichier DD.h

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
#include <vector>
#include <string>
class DD
{
   private:
       std::string DDPath;
       int TotalElements;
 
   public:
       std::vector<std::string> VectorLine;
       bool Load(std::string& DictPath);
}
Fichier DD.cpp

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
#include "DD.h"
    bool DD::Load(std::string& DictPath)
   {
       TotalElements = 0;
       std::ifstream fichier(DictPath.c_str());	
       if(fichier)
      {
           std::string ligne;
           while(std::getline(fichier,ligne))
          {
               if (! ligne.length()) 
                   continue;
               if (ligne[0] == '#') 
                   continue;
 
               VectorLine.push_back(ligne);
               TotalElements ++;
           }
 
           return true;
      }
      else
      {
           return false;
      }
 }
C'est une classe toute simple qui permet de récupérer un fichier texte dans un vecteur dont les éléments contiendront les lignes.
(je n'ai pas mis les contructeurs ...)
Mon problème se passe au niveau de VectorLine.push_back(ligne);
Voici l'erreur du compilateur :
d:\01 - Visual C++\TestD\DD.cpp(27): error C2228: la partie gauche de '.push_back' doit avoir un type class/struct/union

Je comprends très bien ce que veux dire cette erreur, mais comment la résoudre.
Si je déclare un veteur dans le fichier cpp, je peux faire exactement la même chose sans aucun probleme.

Est ce que quelqu'un peut m'eclairer ?
Comment remédier à ceci ?

Merci d'avance