在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3635|回复: 4

[求助] systemverilog抽象类和虚拟方法问题,大侠请进!!!

[复制链接]
发表于 2016-9-5 11:30:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
systemverilog抽象类和虚拟方法问题,大侠请进!!!
systemverilog3.1a
第11.19节
一个基类设置了其子类的原型。由于设置基类的目的就不是为了实例化,所以可以将类指定成 virtual 以便使其变得抽象:
virtual class BasePacket;
抽象类还可以具有虚拟方法。虚拟方法是一个基本的多态性结构。一个虚拟方法过载所有基类中的一个方法,而一个普通
的方法则只能过载该类及其后代类中的一个方法。看待这个问题的一个方面是每个类层次的一个虚拟方法只有一个实现,
并且它总是位于最后一个继承类。虚拟方法为子例程提供了原型,所有的信息基本上都可以在一个方法声明的第一行找到:
封装标准、参数的类型和数目、如果需要的话还包括返回类型。


问题1:请问下“一个虚拟方法过载所有基类中的一个方法”----基类中的虚拟方法不是都是被过载么?这里为什么是虚拟方法过载基类中的一个方法?
2:“而一个普通的方法则只能过载该类及其后代类中的一个方法”----一个普通的方法(非虚拟方法)只能过载父类中的方法,怎么会过载该类及其后代的一个方法呢?
发表于 2016-9-10 12:00:48 | 显示全部楼层
看的不是很明白, 不过SV中的virtual方法其实就是C++中的基于virtual的动态绑定, 这个部分有疑问的话lz可以去C++的一些资料里找答案
发表于 2016-9-11 16:35:30 | 显示全部楼层
这种东西用语言描述起来很晦涩。直接看英文版的手册吧,下面有例子。一看就懂了。
发表于 2016-9-19 14:25:44 | 显示全部楼层
哪找的中文翻译?LRM还是看原文的好
发表于 2016-9-19 19:44:12 | 显示全部楼层
没钱没钱啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-5 12:37 , Processed in 0.020255 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表