21xrx.com
2024-09-19 10:10:39 Thursday
登录
文章检索 我的文章 写文章
C++中子类和父类普通成员函数的调用顺序
2023-06-23 10:46:07 深夜i     --     --
C++ 子类 父类 普通成员函数 调用顺序

在C++中,当我们使用继承时,子类可以继承父类的普通成员函数,但是,在子类中,父类中同名的成员函数会被隐藏掉,因此需要使用作用域解析符"::"来调用父类中的成员函数。

在子类的成员函数中,如果需要调用父类的同名函数,可以使用作用域解析符"::"来显式地指定。

具体来说,在C++中,父类的成员函数会先被调用,然后再调用子类的成员函数。这是因为,子类继承自父类,并且可以重写父类的成员函数,但是,子类也需要调用父类的成员函数来完成某些具体操作。

当子类对象调用父类成员函数时,可以使用作用域解析符"::"来明确调用的是父类中的函数。例如:


class A{

public:

 void foo()

  std::cout<<"A::foo"<<std::endl;

 

};

class B:public A{

public:

 void foo(){

  std::cout<<"B::foo"<<std::endl;

  A::foo();

 }

};

在这个例子中,类B继承自类A,并且重写了成员函数foo。在子类B的foo函数中,需要先调用父类A的foo函数,才能执行子类B的foo函数。

因此,调用子类和父类中普通成员函数的顺序是:先调用父类中的成员函数,然后再调用子类中的成员函数。但是,在子类的成员函数中,也可以通过作用域解析符"::"来明确调用父类中的同名函数。

  
  

评论区

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