构造函数继承问题(在线等)
class ConnDatabase
{
public :
ConnDatabase(void);
~ConnDatabase(void);
protected :
TADOQuery *adoquer;
TADOConnection *adoconn;
};
class SystemLand:public ConnDatabase
{
public :
SystemLand(void):ConnDatabase(void);//报错
~SystemLand(void):~ConnDatabase(void);//报错
}
void ConnDatabase::ConnDatabase(void)
{
adoconn= new TADOConnection(NULL);
if (adoconn==NULL)
{
ShowMessage( "内存分配失败 ");
return;
}
}
ConnDatabase::~ConnDatabase(void)
{
adoconn-> Close();
delete adoconn;
}
大家帮忙看看 看了半天也不知道哪的问题 郁闷死了
[解决办法]
构造函数析构函数不继承
[解决办法]
only constructors take base initializers
~SystemLand(void):~ConnDatabase(void);
==>
~SystemLand(void);
[解决办法]
SystemLand(void):ConnDatabase(void);//报错 => SystemLand(void);
~SystemLand(void):~ConnDatabase(void);//报错=> ~ SystemLand(void);
> > 这样基类的构造和析构函数 没调用呀
==========================================================================
我写的是声明啊,至于定义,也是自动调用的啊,再说你派生类也没有参数需要传到基类啊.