[size=1em][size=1em] class J& F2 ?" D7 n- \; T( C. ]0 Q
[size=1em] InterfaceU1
2 S9 ]5 z" X4 Y* E! {% @[size=1em] {
$ g7 s0 A5 ?2 T7 t/ x[size=1em] public:
+ ]3 y% t% w, w, y7 N! C* W[size=1em] virtual void func1() = 0;
6 t. Q# x# {# M[size=1em] }
$ l+ v3 V2 l% k. L
' X- R: y: _' @8 `1 h2 C[size=1em] class
3 a: v! n2 [4 |/ v, e0 k" D[size=1em] InterfaceU23 N: c/ [1 K, w0 ]( n3 G' ~
[size=1em] {+ g+ M1 \& t& H& n: N# L
[size=1em] public:
2 O& m2 X, R# Q4 b[size=1em] virtual void func2() = 0;
$ u1 m9 ?% o( ?5 m+ g[size=1em] }
/ `5 V& x3 [4 x' o6 c) ]- d+ j) G1 P' o- B
[size=1em] class( P+ q% s# R- ?8 A: d' j$ n- l2 J
[size=1em] Wrapper. x Z1 F2 e+ C/ \0 p( g( S0 ^* H) o
[size=1em] {1 i& W+ Y& x' y: P
[size=1em] public:
* w7 g+ ]9 P p/ s[size=1em] virtual InterfaceU1* getInterface1() = 0;( X |) y" d/ ]5 P- N
[size=1em] virtual InterfaceU2* getInterface2() = 0;: K, C2 }3 ^5 @! j9 q& A3 s1 Z
[size=1em] }
" e$ X0 L/ S1 ]. ]% V: V! \4 g! x3 i' c6 V! n, ^% C* L# [
[size=1em] class* b! `# z0 ~( `* X- h% a, }
[size=1em] Base : public Wrapper, public InterfaceU1, public InterfaceU2% n3 f+ Y! W( J. e% O
[size=1em] {9 N3 A& G' @! N7 P2 T+ B0 n z! i, ^
[size=1em] public:. {# C5 A3 Q& n
[size=1em] virtual InterfaceU1* getInterface1()/ {/ g$ [5 ~6 U
[size=1em] {; Q( X# Q- F6 m% d. @0 J! @
[size=1em] return this;. C/ b, c& \# a- Q* C* O
[size=1em] }
; T6 y/ C6 r, f3 W k7 q[size=1em] virtual InterfaceU2* getInterface2()
: R# c: J: u/ Z; Q[size=1em] {8 R) ], J9 Y$ ]: G7 S
- ?& f( ]# W: T+ O N" C" ]/ Y5 D[size=1em] return this;
6 A1 ?2 u4 M4 ^! f0 m& |) o! t[size=1em] }& N. X9 I* |( [+ F' Q9 A5 Z# \3 D
[size=1em] virtual void func1()# E% r0 b' J4 w* `* u' i! L7 ~
[size=1em] {
, ~4 p! D5 C" b) n, Y[size=1em] printf("%s", "func1");
3 \, B/ c: j% _+ Q$ L4 V* D[size=1em] }
, ~9 z9 Q7 p+ ^8 y1 W$ ^% I! K( o0 W! Q: f3 V" h, W, J
[size=1em] virtual void func2()2 f. d, t, \( L" t/ t
[size=1em] {
" P% g, K x" [[size=1em] printf("%s", "func2");
+ e6 s; d7 v% S; M( q. o[size=1em] }
* [. @0 f. G i r, o2 M6 _5 {) O[size=1em] }
$ L9 H- T, C( R/ r, e, |6 u- c8 U2 r( w/ J/ b
|