Pas sûr que je reçois votre Q correctement ....
class A {
public:
int nValueA;
protected:
int nValueB;
private:
int nValueC;
};
class B : public A {
public:
B();
int x, y, z;
};
B::B():
x(nValueA), //-->OK
y(nValueB), //-->OK
z(nValueC) //-->error due to child can't inherit parent's private member
{}
void main(){
B object;
object.nValueA = 888; //--> valid
object.nValueB = 888; //--> error since protected member is not accessible
object.nValueC = 888; //--> error since private member is not accessible
}
Solution possible:
class A {
public:
int nValueA;
int nValueB;
int nValueC;
};
S'il vous plaît poster erreur exacte et le code! – JoshD
Une erreur dans 'QObject' indique un problème avec la partie Qt du problème, plus qu'un problème avec le côté C++. En général, si le membre de 'base' est public ou protégé, toutes les classes dérivées peuvent y accéder. –