diff options
author | Marcelo Lira <marcelo.lira@openbossa.org> | 2009-11-04 16:39:32 -0300 |
---|---|---|
committer | Hugo Lima <hugo.lima@openbossa.org> | 2009-11-04 16:43:07 -0200 |
commit | 83c91cc8e7a90946466d0f4b94b7d9c7a93cb5ae (patch) | |
tree | 1032db443e659c199d73f7e0df61dcc1fb3c7567 /tests/libsample/multiple_derived.h | |
parent | d396d1233effb0eb4c2fbe777237dbeef6b68d53 (diff) |
improved the multiple inheritance test with two new methods that cast
their instance of MDerived to MBase1 and MBase2; also did some refactors
and commented the unit test
Reviewed by Hugo Parente <hugo.lima@openbossa.org>
Diffstat (limited to 'tests/libsample/multiple_derived.h')
-rw-r--r-- | tests/libsample/multiple_derived.h | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/tests/libsample/multiple_derived.h b/tests/libsample/multiple_derived.h index d73ca5cfa..531cdb28d 100644 --- a/tests/libsample/multiple_derived.h +++ b/tests/libsample/multiple_derived.h @@ -35,34 +35,37 @@ #ifndef MDERIVED_H #define MDERIVED_H -class MBase +class MBase1 { public: - ~MBase() {} - virtual const char *name() { return "Base"; } + ~MBase1() {} + virtual const char* name() { return "MBase"; } }; class MBase2 { public: ~MBase2() {} - virtual const char *funcName() { return "Base2.funcName"; } + virtual const char* funcName() { return "MBase2.funcName"; } }; -class MDerived : public MBase, public MBase2 +class MDerived : public MBase1, public MBase2 { public: MDerived(); virtual ~MDerived(); - // Base methods + // MBase1 methods const char* name(); - // Base2 methods + // MBase2 methods const char* funcName(); - MDerived* transformFromBase2(MBase2 *self); - MDerived* transformFromBase(MBase *self); + MBase1* castToMBase1(); + MBase2* castToMBase2(); + + static MDerived* transformFromBase1(MBase1 *self); + static MDerived* transformFromBase2(MBase2 *self); }; #endif // MDERIVED_H |