#include <stdio.h>
#include <stdlib.h>
#include <vector>
using namespace std;
#include <iostream>
using namespace std;
class A {
public:
static vector<A*> A_vector;
int x, y, z;
A() {
this->x = 0;
this->y = 0;
this->z = 0;
A_vector.push_back(this);
}
~A() { }
void init(int x_in, int y_in, int z_in) {
this->x = x_in;
this->y = y_in;
this->z = z_in;
}
int sum() {
return this->x + this->y + this->z;
}
void show_result() {
int result = sum();
cout << "sum = " << result << endl;
}
};
vector<A*> A::A_vector;
class B {
public:
A A_car, A_cat, A_canada;
B() {
A_car.init(0, 1, 2);
A_cat.init(1, 2, 3);
A_canada.init(8, 7, 6);
}
~B() {}
void show_all_result() {
for (int i = 0; i < A::A_vector.size(); i++)
A::A_vector[i]->show_result();
}
};
int main() {
B obj_B;
obj_B.show_all_result();
printf("done\n");
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHZlY3Rvcj4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNpbmNsdWRlIDxpb3N0cmVhbT4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpjbGFzcyBBIHsKcHVibGljOgogICAgc3RhdGljIHZlY3RvcjxBKj4gQV92ZWN0b3I7CiAgICBpbnQgeCwgeSwgejsKCiAgICBBKCkgewogICAgICAgIHRoaXMtPnggPSAwOwogICAgICAgIHRoaXMtPnkgPSAwOwogICAgICAgIHRoaXMtPnogPSAwOwogICAgICAgIEFfdmVjdG9yLnB1c2hfYmFjayh0aGlzKTsKICAgIH0KCiAgICB+QSgpIHsgfQoKICAgIHZvaWQgaW5pdChpbnQgeF9pbiwgaW50IHlfaW4sIGludCB6X2luKSB7CiAgICAgICAgdGhpcy0+eCA9IHhfaW47CiAgICAgICAgdGhpcy0+eSA9IHlfaW47CiAgICAgICAgdGhpcy0+eiA9IHpfaW47CiAgICB9CgogICAgaW50IHN1bSgpIHsKICAgICAgICByZXR1cm4gdGhpcy0+eCArIHRoaXMtPnkgKyB0aGlzLT56OwogICAgfQoKICAgIHZvaWQgc2hvd19yZXN1bHQoKSB7CiAgICAgICAgaW50IHJlc3VsdCA9IHN1bSgpOwogICAgICAgIGNvdXQgPDwgInN1bSA9ICIgPDwgcmVzdWx0IDw8IGVuZGw7CiAgICB9Cn07CnZlY3RvcjxBKj4gQTo6QV92ZWN0b3I7CgoKY2xhc3MgQiB7CnB1YmxpYzoKICAgIEEgQV9jYXIsIEFfY2F0LCBBX2NhbmFkYTsKCiAgICBCKCkgewogICAgICAgIEFfY2FyLmluaXQoMCwgMSwgMik7CiAgICAgICAgQV9jYXQuaW5pdCgxLCAyLCAzKTsKICAgICAgICBBX2NhbmFkYS5pbml0KDgsIDcsIDYpOwogICAgfQoKICAgIH5CKCkge30KCiAgICB2b2lkIHNob3dfYWxsX3Jlc3VsdCgpIHsKICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IEE6OkFfdmVjdG9yLnNpemUoKTsgaSsrKQogICAgICAgICAgICBBOjpBX3ZlY3RvcltpXS0+c2hvd19yZXN1bHQoKTsKICAgIH0KfTsKCgppbnQgbWFpbigpIHsKCiAgICBCIG9ial9COwoKICAgIG9ial9CLnNob3dfYWxsX3Jlc3VsdCgpOwogICAgcHJpbnRmKCJkb25lXG4iKTsKICAgIHJldHVybiAwOwp9Cgo=