纯虚函数的定义和使用
时间: 2024-01-19 17:16:51 浏览: 72
纯虚函数是一种在基类中声明但没有实现的虚函数。它的定义使用关键字`virtual`和`= 0`来表示。纯虚函数的作用在于给派生类提供一个标准的函数模型,统一的接口来实现动态多态。派生类必须实现纯虚函数才能被实例化。
以下是纯虚函数的定义和使用的示例:
```cpp
class Shape {
public:
virtual void draw() = 0; // 纯虚函数
};
class Circle : public Shape {
public:
void draw() {
// 实现绘制圆形的代码
}
};
class Rectangle : public Shape {
public:
void draw() {
// 实现绘制矩形的代码
}
};
```
在上面的示例中,`Shape`类是一个抽象类,其中的`draw()`函数被声明为纯虚函数。派生类`Circle`和`Rectangle`必须实现`draw()`函数才能被实例化。
使用纯虚函数的好处是可以在基类中定义通用的接口,而具体的实现则由派生类来完成。这样可以实现代码的重用和灵活性。
相关问题
虚函数和纯虚函数的定义
虚函数是在基类中被声明为虚拟的函数,它可以被派生类重写以实现多态性。在 C++ 中,使用关键字 virtual 来声明虚函数。
纯虚函数是在基类中声明的虚函数,它没有实际的实现,只是作为接口规范,它的实现由派生类来完成。在 C++ 中,使用关键字 virtual 和 =0 来声明纯虚函数。含有纯虚函数的类成为抽象类,不能被实例化。
纯虚函数怎么定义
纯虚函数是一个在基类中声明的虚函数,该函数没有实际的实现,而是由派生类来实现。定义纯虚函数的方法是在函数声明后面加上 "= 0",例如:
```
class Base {
public:
virtual void foo() = 0; // 纯虚函数
};
```
注意,含有纯虚函数的类是抽象类,不能被实例化。只有派生类实现了该函数,才能被实例化。
阅读全文