首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

父类的头文件中声明该父类类型的函数,在其子类的cpp文件中实现该函数-什么意思?解决思路

2012-04-03 
父类的头文件中声明该父类类型的函数,在其子类的cpp文件中实现该函数--什么意思?在父类(CCon)的头文件中,

父类的头文件中声明该父类类型的函数,在其子类的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指向它的子类
[解决办法]
就是一个全局函数的声明和实现而已

热点排行