C++多重继承问题

#include <cstdlib>
#include <iostream>

using namespace std;
class A{int m_a;};
class B{int m_b;} ;
class C:public A,public B
{
int m_c; 
};

int main(int argc, char *argv[])
{
C *pc=new C;
B *pb=dynamic_cast<B*>(pc);
A *pa=dynamic_cast<A*>(pc);
cout<<pc<<endl;//0x892a20
cout<<pb<<endl;//0x892a24
cout<<pa<<endl;//0x892a20,和pc地址一样
cout<<(C*)pb<<endl;//0x892a20//指向对象c的地址
cout<<pb<<endl;//0x892a24,pb指针值并不发生变化
system("PAUSE");
return EXIT_SUCCESS;
}

posted @ 2013-04-17 12:30  夜雨阑珊  阅读(167)  评论(0编辑  收藏  举报