J'ai des problèmes avec une classe que j'écris. J'ai divisé la classe en un fichier .h qui définit la classe et un fichier .cpp qui implémente la classe.erreur C2039: 'chaîne': n'est pas un membre de 'std', problème de fichier d'en-tête
Je reçois cette erreur dans Visual Studio 2010 Express:
erreur C2039: 'string': n'est pas membre du 'std'
Ceci est l'en-tête FMAT.h
class string;
class FMAT {
public:
FMAT();
~FMAT();
int session();
private:
int manualSession();
int autoSession();
int mode;
std::string instructionFile;
};
Ceci est le fichier de mise en œuvre FMAT.cpp
#include <iostream>
#include <string>
#include "FMAT.h"
FMAT::FMAT(){
std::cout << "manually (1) or instruction file (2)\n\n";
std::cin >> mode;
if(mode == 2){
std::cout << "Enter full path name of instruction file\n\n";
std::cin >> instructionFile;
}
}
int FMAT::session(){
if(mode==1){
manualSession();
}else if(mode == 2){
autoSession();
}
return 1;
}
int FMAT::manualSession(){
//more code
return 0;
}
c'est le fichier principal qui utilise cette classe 01 Mon incapacité à corriger cette erreur est probablement due au fait que je ne comprends pas comment structurer correctement une classe en fichiers séparés. N'hésitez pas à donner quelques conseils sur la gestion de plusieurs fichiers dans un programme C++.
Vous vouliez probablement dire "déclare une classe" au lieu de "définit". –