zoukankan      html  css  js  c++  java
  • c++语言 纯虚函数的使用

    //纯虚函数
    //在基类中预留出一个成员函数名,此函数并不是为自己所用,而是派生类需要使用,具体功能由派生类根据实际情况重新进行定义.
    //virtual 函数类型 函数名称(参数列表) = 0;
    //纯虚函数是没有函数体的,也就是说在基类中不需要对纯虚函数进行定义
    //最后面的"=0"并不是表示函数的返回值为0,它只是起形式上的作用,用来说明这个虚函数是纯虚函数
    //这是一条声明语句,所以在句子的最后要加";"号
    
    //纯虚函数只有函数的名称而不具备函数的功能,只是为了派生类的特殊功能调用保留函数的名称.
    //如果在一个类中声明纯虚函数,而在派生类中却没有重新对该函数进行定义,则纯虚函数在派生类中仍然为纯虚函数.
    
    #include "stdafx.h"
    #include <iostream>
    using namespace std;
    class CSubject
    {
    public:
        virtual void display() = 0;
    };
    class CChinese:public CSubject
    {
    public:
        virtual void display();
    };
    void CChinese::display()
    {
        cout << "This is Chinese"<< endl;
    }
    class CMath:public CSubject
    {
    public:
        virtual void display();
    };
    void CMath::display()
    {
        cout << "This is Math" << endl;
    }
    class CEnglish:public CSubject
    {
    public:
        virtual void display();
    };
    void CEnglish::display()
    {
        cout << "This is English" << endl;
    }
    
    int main(int argc, char * argv[])
    {
        CSubject *p;
        CChinese chinese;
        CMath math;
        CEnglish english;
        p = &chinese;
        p->display();
        p = &math;
        p->display();
        p = &english;
        p->display();
    
        return 0;
    }
  • 相关阅读:
    Maybe You Don't Know ! 如何比较两个引用是否指向同一个对象?
    记录一点项目心得...
    SharePoint 站点模版
    ObjectSpaces,See you in 2006...
    CLR如何实现线程同步
    Using 1.1, Waiting 2.0 & EasyThread
    在SharePoint中的Workflow引擎开发完成
    ViewState
    《WalkThrough WebPart 入门指南二》完成
    隐藏在.NET中的IoC?
  • 原文地址:https://www.cnblogs.com/pythonschool/p/2758908.html
Copyright © 2011-2022 走看看