|
class Base
{
public:
Base():_x(111){}
private:
int _x;
};
class Derive : public Base
{
public:
Derive():_y(222){}
private:
int _y;
};
int main()
{
queue<Base> q;
Derive d;
q.push(d);
....
Base b = q.front();//这样是可以的.
return 0;
}
q.front();取出来的是Base类型的对象.
怎样才可以转为正确的类型?
比如这里,我要得到Derive的对象,并会访问该对象的_y成员.
除了dynamic_cast外还有其它方法吗?  |
|