/trunk/Examples/ruby/import/foo.h

# · C++ Header · 21 lines · 18 code · 3 blank · 0 comment · 0 complexity · c0ce28e6b93dc7d19a3313dde5ce19b4 MD5 · raw file

  1. #include "base.h"
  2. class Foo : public Base {
  3. public:
  4. Foo() { }
  5. ~Foo() { }
  6. virtual const char * A() const {
  7. return "Foo::A";
  8. }
  9. const char * B() const {
  10. return "Foo::B";
  11. }
  12. virtual Base *toBase() {
  13. return static_cast<Base *>(this);
  14. }
  15. static Foo *fromBase(Base *b) {
  16. return dynamic_cast<Foo *>(b);
  17. }
  18. };