VC虚函数的应用(关键字Virtual)

    技术2026-08-16  18

    虚函数是一个希望在派生类中重新定义的函数,在基类中用VIRTUAL关键字声明。在派生类中可以重新定义虚函数。派生类中的虚函数可以不用VIRTUAL关键字声明。任何子类中的函数都默认都是虚函数。

        派生类中声明的函数必须和基类中的函数有相同的函数原型,参数个数、参数类型和返回值类型都必须一致。

        使用基类的指针对象或引用,就可以调用虚函数和派生的子函数。

        (在程序中应用cout/cin语句必需声明:#include"iostream.h"头文件)

        程序执行如下:

        // TestVirtualClass2.cpp : Defines the entry point for the console application.//

    #include "stdafx.h"#include"iostream.h"class A{public: virtual void outnews(int n){  cout<<"基类A中输出的数:"<<n<<"/n"; } virtual void outnews2(int n){  cout<<"基类A中输出的数:"<<n<<"/n"; }};class B:public A{public: void outnews(int n){  cout<<"子类B中输出的数:"<<n<<"/n"; }};

    int main(int argc, char* argv[]){    B objb; A obja,*a_ptr; a_ptr=&obja; a_ptr->outnews(100);      //调用基类OUTNEWS函数 a_ptr=&objb; a_ptr->outnews(100);       //调用子类OUTNEWS函数 a_ptr->outnews2(200);       //调用基类OUTNEWS函数

     return 0;}程序运行结果:

    最新回复(0)