读书人

父类的头文件中声明该父类类型的函数

发布时间: 2012-04-03 12:38:19 作者: rapoo

父类的头文件中声明该父类类型的函数,在其子类的cpp文件中实现该函数--什么意思?
在父类(CCon)的头文件中,最底部(不在类定义内)有函数声明

C/C++ code
CCon* CreateCon(int nConnID);

然后在其子类(CzCon)的cpp文件中,有函数的实现:
C/C++ code
CCon* CreateCon(int nConnID){    return new CzCon(nConnID);}

这是什么意思?是不是如果按下面定义,就可以自动令pCon为子类的类型?那当定义pCon的时候,是通过函数声明找到函数的定义的?
C/C++ code
CCon* pCon = CreateCon(nConnID)


[解决办法]
挺奇怪的,没见过这么干的。你说的都对,pCon指向的确实是CzCon类型。
[解决办法]
C/C++ code
#include <iostream>using namespace std;class Base{public:    void fun()    {        cout << "base fun()" << endl;    }};class Derived : public Base{public:    void fun()    {        cout << "Derived fun()" << endl;    }};int main(){    Derived td;    td.fun();    return 0;}
[解决办法]
pCon指向它的子类
[解决办法]
就是一个全局函数的声明和实现而已

读书人网 >C++

热点推荐