美文网首页C++从入门到放弃
引用传递对象调用virtual方法

引用传递对象调用virtual方法

作者: lixin_karl | 来源:发表于2019-06-10 18:35 被阅读0次

    引用传递的话,对于virtual函数可以正确调用正确的函数

    class Base{
    public:
        virtual void print() const
        {
            cout<<"Base"<<endl;
        }
    };
    
    class Child : public Base{
    public:
        void print() const override
        {
            cout<<"Child"<<endl;
        }
    };
    
    void Print1(const Base &base)
    {
        base.print();
    }
    void Print2(const Base base)
    {
        base.print();
    }
    int main()
    {
       Child child;
       Print1(child);
       Print2(child);
       return 0;
    }
    

    相关文章

      网友评论

        本文标题:引用传递对象调用virtual方法

        本文链接:https://www.haomeiwen.com/subject/fistfctx.html