父会员功能中虚拟函数的C 行为
C++ Behavior of virtual functions in parent member function
我对在父构件函数中使用虚拟函数的行为有疑问。
ex
class A {
private:
vars;
virtual fn_v() {.....}
public:
fn_A() {
fn_v();
....
}
class B : public A {
....
public:
fn_v() {.....}
当我从B的对象调用fn_A()
时,将调用哪个虚拟函数的实现?
当我从B的对象调用FN_A((时,将调用哪个虚拟函数的实现?
当然,B
中的一个。这就是虚拟函数的含义。如果称为该方法的对象是覆盖虚拟方法的类,则将调用覆盖物。这是相当基础的。
相关文章:
- 奇怪的构造函数行为
- 为什么 ADL 的运算符函数行为与其他函数不同?
- C++11 thread_local析构函数行为
- 派生类中的虚函数行为
- std::变量转换构造函数行为
- 具有类成员默认值的 C++11 默认构造函数行为
- 定义多个构造函数时的默认构造函数行为
- 关于结构构造函数和析构函数行为-C++
- c++ 构造函数行为
- 我无法理解这种复制构造函数行为
- C++复制构造函数行为
- visual C++未执行的代码会改变函数行为
- 更改描述函数行为的位置是否会导致错误?
- 为什么静态初始化和构造函数行为在此程序中不同
- 调用 const 对象时的类成员函数行为
- 数组和指针的函数行为不同
- 运算符与函数行为
- VC6 和 VS2008 之间的模板函数行为
- QList析构函数行为-对列表中的指针调用delete/free()
- searchtree类的insert函数行为不端