1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | struct Entry { int x; int y; }; struct Indirect : public Entry { }; template<typename T> struct EntryOr : public T, Indirect { } ; // From C code struct A { int x; } int main() { EntryOr<A> foo; foo.x = 5; // A::x foo.y = 7; // Entry::y } |
c3RydWN0IEVudHJ5IHsKICBpbnQgeDsKICBpbnQgeTsKfTsKc3RydWN0IEluZGlyZWN0IDogcHVibGljIEVudHJ5IHsgfTsKdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IEVudHJ5T3IgOiBwdWJsaWMgVCwgSW5kaXJlY3QgeyB9IDsKCi8vIEZyb20gQyBjb2RlCnN0cnVjdCBBIHsKICBpbnQgeDsKfQoKaW50IG1haW4oKQp7CiAgRW50cnlPcjxBPiBmb287CiAgZm9vLnggPSA1OyAvLyBBOjp4CiAgZm9vLnkgPSA3OyAvLyBFbnRyeTo6eQp9


