struct dans la classe
J'ai struct dans la classe et de ne pas savoir comment appeler les variables de structure, s'il vous plaît aider 😉
#include <iostream>
using namespace std;
class E
{
public:
struct X
{
int v;
};
};
int main(){
E object;
object.v=10; //not work
return 0;
}
¤ En C++ imbrication des classes (un
struct
est une classe) ne représentent pas des données de nidification. Il se contente de les nids les définitions de classe. Ainsi, vous pouvez déclarer une variable comme E::X object; object.v = 10;
. La nidification ne avoir un certain effet sur l'accessibilité des noms, mais ces règles sont subtiles, et ont été modifiés à tout à fait un certain nombre de fois, et autant que je sache, personne ne sais vraiment ce qu'ils sont ou devraient être. Dans la pratique, lorsque nous utilisons de nidification, nous allons avec ce que les compilateurs permettent de, et espérons simplement que c'est plus ou moins ce que les règles formelles dire aussi. Cheers & hth.,OriginalL'auteur Wizard | 2011-12-18
Vous devez vous connecter pour publier un commentaire.
J'ai déclaré de classe B à l'intérieur d'Une classe, comment puis-je y avoir accès?
Juste parce que vous déclarez votre
struct B
à l'intérieur declass A
ne signifie pas qu'une instance declass A
automatiquement les propriétés destruct B
en tant que membres, cela ne signifie pas que celui-ci est automatiquement une instance destruct B
en tant que membre.Il n'y a pas de véritable relation entre les deux classes (
A
etB
), en plus de la portée.OriginalL'auteur Filip Roséen - refp
Il n'est pas clair ce que vous êtes en train d'essayer de l'atteindre, mais en voici deux alternatives:
OriginalL'auteur Johnsyweb
Votre
E
classe n'ont pas un membre de typestruct X
, vous avez défini un imbriquéestruct X
là (c'est à dire, vous avez défini un nouveau type).Essayer:
Juste comme n'importe quel autre membre
x.v
outhis->x.v
.OriginalL'auteur Mat
Vous devez définir la structure de la classe comme ceci:
OriginalL'auteur geniaz1
Si vous donnez la structure pas de nom, il va travailler
Écrire X x et écrire des e.x.v
OriginalL'auteur