Bonjour,
J'ai un problème bateau, mais malgré des recherches je ne trouve pas la solution.
Je veux faire une classe abstraite et quelques classes qui en dérivent. Mais j'ai des erreurs.
Voici le code: object.hobject.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 class Object{ public: virtual ~Object() = 0; protected: std::string m_guid; public: std::string get_guid(); };file.h : classe qui dérive
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 #include "object.h" std::string Object::get_guid(){ return m_guid; }
file.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 class File : public Object{ public: File(std::string guid, std::string code, std::string name); ~File(); protected: std::string m_code, m_name; public: std::string get_code(); std::string get_name(); };Voici mon erreur de compil :
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 #include "file.h" File::File(std::string guid, std::string code, std::string name): m_guid(guid), m_code(code), m_name(name){ } File::~File(){ } std::string File::get_code(){ return m_code; } std::string File::get_name(){ return m_name; }Mes il devrait en hériter ? non ?file.cpp: In constructor «File::File(std::string, std::string, std::string)»:
file.cpp:15: erreur: class «File» does not have any field named «m_guid»
Merci d'avance.
Partager