**虚函数的使用方法**

来源:互联网 发布:java企业级项目案例 编辑:程序博客网 时间:2024/06/05 05:57

1.在基类中用virtual关键字申明成员函数为虚函数

class CShape{    public:    virtual void draw()=0;};

2.在派生类中重新定义此函数,要求函数名、函数类型、函数参数个数和类型全部与基类的虚函数相同,并根据派生类的需要重新定义函数体。

class CTriangle : public CShape{    public:    void draw();};class CSquare : public CShape{    public:    void draw();};

3.定义一个指向基类对象的指针变量,并使它指向同一类族中需要调用该函数的对象。

4.通过该指针变量调用此虚函数,此时调用的就是指针变量指向的对象的同名函数。

void Draw(CShape &shape);int main(){    CSquare square;    CShape *p = &shape;    Draw(square);//调用的是square.draw()    p = &square    p->draw();  //调用的是square.draw()    return 0;}void Draw(CShape &shape){    shape.draw();}
原创粉丝点击