C, C + + struct nesting
/************************************************************************//* Nested Structures * C + + **//************************************************************************/struct A { Private:int a1[20];p ublic:void Initialize (); struct B {private:a *b;int *p;public:void Initialize (A *a); void next (); int Read;void set (int i);}; Friend A::b;}; void A::initialize () {memset (a1, 0, sizeof (A1));} void A::b::initialize (A *a) {B = A;p = A->A1;} void A::b::set (int i) {*p = i;} /*void Main () {a A; A::b b1,b2;int i;a.initialize (); b1.initialize (&a); b2.initialize (&a); for (i =0; i<20; i++) {b1.set (i); B2.set (i);}} /************************************************************************//* C * Nested struct * * *//********************** /typedef struct A{INT year;int month;int Day;}; typedef struct B {string name;int age;union{a AA;} Xy;struct A Aa1;}; void Main () {B *b1 =null;b1->xy.aa.day =1991;b1->aa1.month = 7;getchar ();}
C, C + + struct nesting