Systemverilog(绿皮书)第五章——类与对象(二)类的成员

 类的成员具有封装性,默认的成员类型为public,有限制的成员类型为protected和local:

class clock 
    local bit is_summer = 0;
    local int nclock = 6;
    function int get_clock();
        if(!is_summer) return this.nclock;
        else return this.nclock+1;
    endfunction
    function bit set_summer(bit s);
        this.is_summer = s;
    endfunction
endclass


clock ck;
    initial begin
        ck = new();
        $display("now tome is %0d", ck.get_clock());
        ck.set_summer(1);
        $display("noe time is %0d", ck.nclock);
end

 [6,报错]

分析程序:

clock ck先声明了一个句柄ck,接下来创建一个对象new()

ck.get_clock函数调用了对象的方法,但是ck属于外部的句柄,无法访问local中的变量nclock。 但是可以通过函数get_clock访问local变量。

类的 成员具有的一些特性有:

发布了14 篇原创文章 · 获赞 10 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/Jay_who/article/details/105549511
今日推荐