#include <iostream>
#include <string>
#include <vector>
using namespace std;
class base
{
public:
base()
{
logbase();
}
virtual void logbase()
{
cout<<"from base"<<endl;
}
};
class derive:public base
{
public:
virtual void logbase()
{
cout<<"from derive"<<endl;
}
};
int main(int argc, const char *argv[])
{
derive d;
return 0;
}
这段代码的结果是打印 from base,说明在调用base构造函数时,derive还没被创建所以调用的base里的logbase。代码的目的是把派生类的信息传递给base类,利用虚函数的做法显然这样是不可行的,
小白学c++之构造函数里的虚函数
最新推荐文章于 2024-06-23 21:33:56 发布