推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

systemverilog类的继承

更新时间:2019-10-22 21:23:40 大小:48K 上传用户:xuzhen1查看TA发布的资源 标签:systemverilog 下载积分:1分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

SystemVerilog支持单继承(类似Java,而不像C++).有一个让SystemVerilog 支持多重继承的提案[1],但是短期内不会看到曙光。

什么是继承?

继承是面向对象编程范式的关键概念。类用来创建用户自定义类型.继承使得用户可以用非常安全,非侵入的方式对类的行为进行增加或者修改。

使用继承可以定义子类型,在子类型中增加新的方法和数据。被继承的类一般称为基类(SystemVerilog 中的超类),得到的新类一般称为引申类

(或子类)。

为什么继承如此重要?因为它使得复用得以实现。让我们通过实例来说明假设我们对一个图像模块进行建模.对其中一部分,我们写了一个代表颜色的类:

Now现在它的下一个版本希望能够处理部分透明的图像。为此,我们给Color 类增加了一个alpha成员,。alpha 代表图像的透明度。alpha越大,图像的像素越结实(不透明)。0’代表完全透明,使得图片的背景全部可见。因此,我们修改color类如下:

部分文件列表

文件名 大小
systemverilog类的继承.pdf 48K

部分页面预览

(完整内容请下载后查看)
类的继承  
SystemVerilog  
支持单继承 ( 类似 Java, 而不像 C++).  
有一个让 SystemVerilog  
支持多重继承的提案  
[1], 但是短期内不会看到曙光。  
目录  
1 什么是继承 ?  
2 有什么好处  
3 -关定律  
4 参考资料  
什么是继承 ?  
继承是面向对象编程范式的关键概念。类用来创建用户自定义类型  
. 继承使得用户可以用非常安全,非侵入的方式对类的行为进行增加或者修改。  
使用继承可以定义子类型,在子类型中增加新的方法和数据。被继承的类一般称为基类  
(或子类)。  
(SystemVerilog  
中的超类 ),得到的新类一般称为引申类  
为什么继承如此重要 ? 因为它使得复用得以实现。让我们通过实例来说明  
颜色的类 :  
. 假设我们对一个图像模块进行建模  
. 对其中一部分,我们写了一个代表  
Color  
class  
byte  
;
red  
unsigned  
unsigned  
unsigned  
;
green  
byte  
;
blue  
byte  
;
red_  
function  
byte  
new ( byte unsigned  
= 255 ,  
green_  
unsigned  
unsigned  
= 255 ,  
blue_  
byte  
= 255 );  
red  
red_  
=
;
green  
green_  
=
;
blue  
blue_  
=
;
endfunction  
function  
: new  
mix  
Color other  
(
);  
brighter  
float  
percent  
function  
(
);  
draw_pixel  
task  
( int x , int y);  

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载