1 1.含有一个纯虚函数的类是纯虚类
2 2.纯虚类可以有成员变量
3 3.纯虚类可以有普通的成员函数(包括普通成员函数和虚拟成员函数)
4 3.纯虚类可不可以又带有参数的构造函数? (可以)
5 4.可不可以在纯虚类的派生类的构造函数中显式调用纯虚类的带参数构造函数(可以)
#include <iostream>
using namespace std;
class A{
public:
A(string & name);
~A();
virtual void abmethod(int value) = 0;
private:
std::string name_;
};
A::A(string &name):name_(name)
{
std::cout<<"A::A"<<std::endl;
}
A::~A()
{
std::cout<<"A::~A"<<std::endl;
}
class B : public A{
public:
B(int value,string &name);
~B();
void abmethod(int value);
private:
int value_;
};
B::B(int value,string &name):A(name),value_(value)
{
std::cout<<"B::B"<<std::endl;
}
B::~B()
{
std::cout<<"B::~B"<<std::endl;
}
void B::abmethod(int value)
{
this->value_ = value;
}
int main(int argc,char* argv[])
{
string str = "hello world!";
A *a = new B(1,str);
//A aa(str);
B bb(12,str);
return 0;
}