基类到子类的强制转换问题
假如有如下关系: class a{};
class b:public a
{
private: int x;
public: b(); int method1()const{return x;}
};
class c:public b
{
private: char ar[10];
public:c(); const char * method2(){return ar;}
};
b obj1;
b * pb = & obj1;
c * pc;
pc = dynamic_cast <c*> (pb);
pc-> method2(); // pc可以调用method2方法么?????
这种基类到子类的向下转换是怎么执行的??比如说子类对象里有基类对象没有的char 型私有成员以及method2()方法。。在向下转换的时候。会自动生成这些成员?
还是说忽略这些成员?