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; }
学习笔记转摘于:
丝酷网 http://www.pythonschool.com/