blob: b7eb252bad83c23e0f96534a772138e74b831b8b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#define CLASS(NAME) \
class NAME { \
public: \
struct Inner; \
Inner *i = nullptr; \
}; \
NAME::Inner &getInner##NAME();
CLASS(A)
CLASS(B)
CLASS(C)
CLASS(D)
CLASS(E)
CLASS(F)
CLASS(G)
int main()
{
A::Inner &inner_a = getInnerA();
B::Inner &inner_b = getInnerB();
C::Inner &inner_c = getInnerC();
D::Inner &inner_d = getInnerD();
E::Inner &inner_e = getInnerE();
F::Inner &inner_f = getInnerF();
G::Inner &inner_g = getInnerG();
return 0; // break here
}
|