21xrx.com
2024-11-05 19:29:27 Tuesday
登录
文章检索 我的文章 写文章
C++中如何访问虚函数?
2023-07-05 08:39:44 深夜i     --     --
C++ 访问虚函数 虚函数的调用方式 继承和多态性 动态绑定

C++中的虚函数是在类层次结构中使用的一种机制。虚函数允许子类重写父类的函数,从而实现多态性。

在C++中,访问虚函数的方式取决于类的实例是通过指针还是引用来访问的。

如果类的实例是通过指针访问的,那么可以使用箭头操作符来访问虚函数。例如:


class Base {

public:

  virtual void func() std::cout << "Base::func" << std::endl;

};

class Derived : public Base {

public:

  void func() std::cout << "Derived::func" << std::endl;

};

Base* pBase = new Derived;

pBase->func(); // 输出:Derived::func

在上面的代码中,`pBase`是一个指向`Derived`类的指针。由于`func`是虚函数,因此调用`pBase->func()`将调用`Derived`类中的函数。

如果类的实例是通过引用访问的,那么可以使用点操作符来访问虚函数。例如:


Base& refBase = *pBase;

refBase.func(); // 输出:Derived::func

在上面的代码中,`refBase`是一个指向`Derived`类的引用。由于`func`是虚函数,因此调用`refBase.func()`将调用`Derived`类中的函数。

总的来说,在C++中访问虚函数是非常简单的,只需使用点操作符或箭头操作符就可以了。无论你是通过指针还是引用访问虚函数,都可以轻松地实现多态性,使程序更加灵活和可扩展。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复