💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
## 一.纯虚函数 ### 1.背景 有时在基类中将某一成员函数定为虚函数,并不是基类本身的要求,而是考虑到派生类的需要,在基类中预留了一个函数名,具体功能留给派生类根据需要去定义。 ### 2.声明 没有函数体,在声明末尾添加 `= 0` 。但 `0` 不是函数的返回值。 ```c++ virtual void display() const = 0;//纯虚函数 ``` ### 3.使用 + 纯虚函数只是一个占位符,不能被调用。 + 如果在一个类中声明了纯虚函数,而在其派生类中没有对该函数定义,则该虚函数在派生类中仍然为纯虚函数。 ## 二.抽象类 1. **概念** 包含纯虚函数的类。 2. **功能** 创建派生类,而不用其来生成对象。 3. 如果派生类中仍有没有定义的纯虚函数,则派生类依然是抽象类。