c++里基类的指针, 能访问派生类的成员变量吗?

2025-05-01 19:27:02
推荐回答(1个)
回答1:

360问答
指向派生类的基类指针可不可以调用派生类成员函数?

军8786050 LV12
2017-01-18
如果可以,怎么访问,如果不可以有什么解决办法?
满意答案

liqi26zc
LV6
2017-01-19
可以,只要那个派生类成员函数是基类的成员函数的一个重写版本

以C++为例,假如有
class Runnable {
virtual void run();
};

class myclass : Runnable {
virtual void run() { throw runtime_error("unimplemented"); }
};

并且有
myclass o;
Runnable* p = &o;
那么 p->run() 就调用了派生类的 run 函数