C++程序 创建接口
接口 仅是描述类行为而不承诺实现类的一种方式。在C++编程中,没有内置的接口概念。为了创建接口,我们需要创建一个仅具有纯虚拟方法的抽象类。在C++中,接口也称为纯抽象类。
纯虚拟函数
纯虚拟函数是一种我们仅声明函数而不定义函数的函数。纯虚拟方法/函数的实现是通过方法/函数覆盖在派生类完成的。如果函数在类中定义如下,则称该函数为纯虚拟函数。
virtual datatype functionName(parameter1, parameter2, …) = 0
抽象类
抽象类是专门设计为基类使用的类。抽象类必须至少有一个纯虚拟函数。它可能具有变量和常规函数。抽象类的派生类必须实现它们的基类的所有纯虚拟函数,否则它们也将变为抽象类。
接口的重要性
- 从纯抽象类(接口)派生的任何类必须实现基类即接口的所有方法。
- 可以将接口指针传递给函数和类,因此可以从那里调用派生类的函数。
使用接口的规则
- 仅声明纯虚拟函数。(不定义)
- 对于纯虚拟函数,只分配0。
- 不能创建该类的实例。
- 可以创建指向具有基础抽象类引用的派生类实例的指针。
让我们来看几个创建接口的程序示例。
示例1: 在下面的代码中,创建了一个接口GFG,即一个具有纯虚拟方法的抽象类,并在子类中实现了函数,在主函数中按照使用接口的规则调用了returnString()方法。
输出
示例2: 在下面的代码中,创建了一个抽象类websiteName,并在其中放置了一个纯虚函数。因此,它充当了接口。方法getName()的功能在基类的两个子类中实现。
输出结果