Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include "class2.hpp"
- class B {
- public:
- virtual int BMethod(int x)=0;
- };
- class D{
- public:
- virtual int DMethod(int x)=0;
- };
- class A:public B,public C, public D
- {
- public:
- virtual int CMethod(int x) {return x+2;}
- virtual int BMethod(int x) {return x+1;}
- virtual int DMethod(int x) {return x+3;}
- };
- int main (void)
- {
- A* a=new A();
- Test* t= new Test();
- std::cout << a->CMethod(8) << std::endl;
- C* c;
- c= (C*) a;
- std::cout << t->test(c,8) << std::endl;
- c= static_cast<C*>( a);
- std::cout << t->test(c,8) << std::endl;
- c= dynamic_cast<C*>( a);
- std::cout << t->test(c,8) << std::endl;
- B* b;
- b= (B*) a;
- std::cout << b->BMethod(8) << std::endl;
- b= static_cast<B*>( a);
- std::cout << b->BMethod(8) << std::endl;
- b= dynamic_cast<B*>( a);
- std::cout << b->BMethod(8) << std::endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement