Existe t'il un moyen de faire une forward déclaration d'une struct/class
définie dans une autre struct/class ou bien suis-je obigé de faire un
#include pour avoir la déclaration complète de la classe englobante.
Merci.
--
Vianney LANÇON
radix omnia malorum prematurae optimisatia est
-- Donald Knuth
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gourgouilloult
Vianney Lançon wrote:
class MyClass; struct MyClass::MyStruct; // ne compile pas;
Etant donné qu'on n'est pas censé pouvoir rajouter des choses dans l'espace de noms d'une classe, ça me paraît normal de pas pouvoir écrire ça. Donc il te faut effectivement la définition de MyClass en entier, si la fonction qui a besoin de la classe interne n'est pas membre de MyClass.
Après, bien sûr, une question plus délicate est de savoir si MyStruct veut véritablement interne à une autre classe... enfin les questions de conception, quoi.
Gourgou
Vianney Lançon wrote:
class MyClass;
struct MyClass::MyStruct; // ne compile pas;
Etant donné qu'on n'est pas censé pouvoir rajouter des choses dans
l'espace de noms d'une classe, ça me paraît normal de pas pouvoir écrire
ça. Donc il te faut effectivement la définition de MyClass en entier,
si la fonction qui a besoin de la classe interne n'est pas membre de
MyClass.
Après, bien sûr, une question plus délicate est de savoir si MyStruct
veut véritablement interne à une autre classe... enfin les questions de
conception, quoi.
class MyClass; struct MyClass::MyStruct; // ne compile pas;
Etant donné qu'on n'est pas censé pouvoir rajouter des choses dans l'espace de noms d'une classe, ça me paraît normal de pas pouvoir écrire ça. Donc il te faut effectivement la définition de MyClass en entier, si la fonction qui a besoin de la classe interne n'est pas membre de MyClass.
Après, bien sûr, une question plus délicate est de savoir si MyStruct veut véritablement interne à une autre classe... enfin les questions de conception, quoi.