C++纯虚函数和抽象类

多态中,通常父类中的虚函数的实现是毫无意义的,主要都是调用重写的内容

纯虚函数语法virtual返回值类型 函数名 (参数列表) = 0

当类中了纯虚函数,这个类也称为抽象类

抽象类的特点:
  1. 无实例化对象
  2. 子类必须重写抽象类中的虚函数,否则也属于抽象类
class Base
{
public:
	//纯虚函数
	//类中只要一个纯虚函数就称为抽象类
	//抽象类必须重写父类中的纯虚函数,否则也属于抽象类
	virtual void func() = 0;
};


class Son :public Base
{
public:
	virtual void func()
	{
		cout << "func调用" << endl;
	}
};

void test01()
{
	Base* base = NULL;
	//base = new Base;//抽象类无法实例化对象
	base = new Son;
	base->func();
	delete base; //记得销毁
}

int main()
{
	test01();
	return 0;
}

你可能感兴趣的:(C,c++,jvm)