Dans les classes C++, comment accéder à une variable de super-ensemble à partir d'un autre sous-ensemble? Cela ne peut être montré visuellement comme un exemple pour vous de comprendre.Accéder à une variable de super-groupe à partir d'un sous-ensemble dans un autre sous-ensemble
L'ICA est au-dessus du président et a le droit de garder l'information confidentielle du président.
class CIA {
public:
bool aliensExist = true; // 100%
};
class President {
public:
bool doAliensExist() {
return aliensExist; // Not sure, no access to CIA's aliensExist variable
}
};
class Subset : public President, public CIA {
};
int main() {
Subset subset;
cout << "Aliens exist = " << subset.doAliensExist() << endl;
}
Comment puis-je accéder à aliensExist
en utilisant la méthode à l'intérieur President
classe à partir de la classe Subset
?
Je sais l'exemple ci-dessus est illogique et bien sûr President
ne peut pas accéder CIA
sans qu'il soit un sous-ensemble directement de celui-ci, mais je me demande ce qui est une bonne approche pour quelque chose comme ça?
Faites 'doAliensExist()' une méthode abstraite et remplacez-la dans 'Subset'. Pour plus d'informations [voir votre livre C++] (https://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list). –
Les classes de base ne se connaissent pas. La classe 'Subset' a, et pourrait être capable de coordonner. –
À moins d'être plus précis sur «quelque chose comme ça», vous obtiendrez seulement des commentaires ou des votes négatifs. Comme 2 commentaires précédents disent, il pourrait y avoir moyen de réaliser ce que vous voulez, mais vous devez clairement dire ce que vous voulez en effet car l'exemple n'est pas représentatif (vous ne pouvez pas accéder aux extraterrestres Existez du président comme vous le dites) –