微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > 请教:sv里面运用extern virtual task的好处是什么

请教:sv里面运用extern virtual task的好处是什么

时间:10-02 整理:3721RD 点击:
请教:sv里面运用extern virtual task的好处是什么

可以在class外面定义不同的virtual task来实现不同的功能

恩 这个知道 但有些是在该类里面用的没有放在外面 为什么有这个用法 你知道么

callback什么的都是这个实现的哇

同问同问

同问,是为了重载吗?

为了重载。面向对象中最伟大的发明。

我觉得,用 external 就是为了把这个task在类的外边进行实现。其实和在类的里面实现是完全一样的,没有任何区别。放在外边可能是为了控制类的长度。有些人喜欢在一屏中显示类的所有项目。具体实现可以在后面写。
virtual 的作用可以是callback了,或者是继承实现了。
拙见,斧正。

virtual的主要作用要把子类句柄赋值给父类句柄时才看的出来,单纯的想覆盖某个function或者task的功能,有没有virtual关键字无所谓。

1,extern是为了控制class长度。
2,virtual就是简单的虚函数功能。
3,virtual并不是为了callback而生,但callback需要virtual。因为在调用callback时,是通过父类handle来调用的,所以得用virtual,如果是非virtual函数/任务,那么调用的就都是父类里的函数/任务


前段时间我也在纳闷呢,现在终于明白了,楼上正解。还有一点,virtual一般采用掉父类的句柄,这样就可以减少编写代码工作量。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top