|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
systemverilog抽象类和虚拟方法问题,大侠请进!!!
systemverilog3.1a
第11.19节
一个基类设置了其子类的原型。由于设置基类的目的就不是为了实例化,所以可以将类指定成 virtual 以便使其变得抽象:
virtual class BasePacket;
抽象类还可以具有虚拟方法。虚拟方法是一个基本的多态性结构。一个虚拟方法过载所有基类中的一个方法,而一个普通
的方法则只能过载该类及其后代类中的一个方法。看待这个问题的一个方面是每个类层次的一个虚拟方法只有一个实现,
并且它总是位于最后一个继承类。虚拟方法为子例程提供了原型,所有的信息基本上都可以在一个方法声明的第一行找到:
封装标准、参数的类型和数目、如果需要的话还包括返回类型。
问题1:请问下“一个虚拟方法过载所有基类中的一个方法”----基类中的虚拟方法不是都是被过载么?这里为什么是虚拟方法过载基类中的一个方法?
2:“而一个普通的方法则只能过载该类及其后代类中的一个方法”----一个普通的方法(非虚拟方法)只能过载父类中的方法,怎么会过载该类及其后代的一个方法呢? |
|