首页 > 代码库 > C++ - 继承虚函数调用 代码
C++ - 继承虚函数调用 代码
继承虚函数调用 代码
本文地址: http://blog.csdn.net/caroline_wendy
派生类继承基类时, 使用virtual时, 会进行动态绑定, 没有virtual关键字则会覆盖.
使用基类指针(Base*)指向派生类时, 调用函数, 则动态绑定的函数会调用派生类, 非动态绑定的函数调用基类.
代码:
/* * main.cpp * * Created on: 2014.9.12 * Author: Spike */ /*eclipse cdt, gcc 4.8.1*/ #include <iostream> using namespace std; class Base { public: Base(int j) : i(j) {} virtual ~Base() {} void func1() {i*=10; func2();} int getValue() {return i;} protected: virtual void func2() {i++;} protected: int i; }; class Child : public Base { public: Child(int j) : Base(j) {} void func1() {i*=100; func2();} protected: void func2() {i+=2;} }; int main(void) { Base* pb = new Child(1); pb->func1(); cout << pb->getValue() << endl; return 0; }
输出:
12
C++ - 继承虚函数调用 代码
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。