#include<iostream>
using namespace std;
struct My_Class{
class My_struct{
int am_i_in_class_or_struct;
};
};
int main(){
cout<<sizeof(My_Class)<<endl;
cout<<sizeof(My_struct)<<endl;
cout<<sizeof(int);
}
S'il vous plaît Expliquer: quand je le programme exécuté ci-dessus sur Turbo C je suis arrivé sortie: Maintenant, ne doit pas être la taille même dans chaque cas, ou au moins My_Class devrait avoir la même taille ou plus grande que My_struct !! S'il y a des erreurs dans le programme, corrigez-les si vous le pouvez, ou bien ignorez-le et concentrez-vous sur la question à résoudre! Je ne fais pas confiance à Turbo C en tant que tel ... mais actuellement mon VS 2008 continue de s'écraser en raison de mon Ram va mal!Nesting de struct et classes
Comment? La manière "habituelle": les données sont "imbriquées" en déclarant un membre de données "My_struct my_struct;" dans la classe externe. – AnT
@strut avez-vous essayé d'utiliser le code de ma réponse pour cela? –
@strut: Je ne sais pas comment vous l'utilisez pour obtenir une telle erreur. Vous devez poster le code. Faire ce que j'ai suggéré dans mon commentaire ci-dessus ne provoque aucune erreur du compilateur. De même, lorsque vous êtes dans 'My_Class', vous n'avez pas besoin d'utiliser le nom complet' My_Class :: My_struct'. Juste 'My_struct' est suffisant. Mais 'My_Class :: My_struct' devrait aussi fonctionner. – AnT