Bonjour,
J'essaye de masquer des traitements en héritant d'une classe par 'private' :
soit un fichier classA.h :
et un fichier ClassA.cpp :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 class ClassA_private; class ClassA : private ClassA_private { public: ClassA(); };
Voilà l'esprit de la chose, mais le compilateur n'en veut pas. Il considère qu'il n'en sait pas assez sur ClassA_private.
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 #include "classA.h" //----- typedef struct { int var; } TypeInterne; class ClassA_private { public: TypeInterne ti; public: internalInit() { ti.var = 5; } }; //----- ClassA::ClassA() { internalInit(); }
Commet s'y prendre ?
Merci.
Partager