信号监听器从CIlistener子类化

时间:2015-07-01 01:36:11

标签: omnet++

我有一个模块产生的信号。我想在另一个模块中定义一个信号监听器类,但每当我想从CIListener继承它时,它说它不能从我的子类监听器创建一个新实例,因为CIListener类是一个纯虚拟类(接口类)。但是我已经在我的监听器类中重新声明或重新定义了所有纯虚方法。相反,当我使用CListener类来继承我的监听器时,它的工作原理!我是否必须从CIListener中继承子类?

1 个答案:

答案 0 :(得分:2)

我猜你相信你已经重新定义了所有纯方法,但实际上编译器认为不然。应该使用适当的签名实现7种纯虚方法。如果你只想支持某些数据类型(在大多数情况下),我建议实现(扩展)cListener,因为它只是cIListener接口的NOP实现(所有它的抛出不支持的数据类型的方法错误)。一定要看看你是否确实覆盖了必要的方法。您可以在方法定义中使用override C ++关键字。