System verilog 为什么要用两次;新";在systemverilog中?

System verilog 为什么要用两次;新";在systemverilog中?,system-verilog,System Verilog,你能告诉我为什么我们必须在systemverilog中输入两次“new”关键字吗? ​ 如您所见,有两个“new”关键字 你能告诉我为什么我们需要用两次吗 function new(); number = 0; endfunction 提供函数new()的实现。当我们打电话时: MyClass test1=new() 我们正在创建test1。为了创建它,我们调用函数new(),我们在上面定义了它的实现。当我们调用new()时,它将确保test1的属性number初始化为0(因为这就

你能告诉我为什么我们必须在systemverilog中输入两次“new”关键字吗? ​

如您所见,有两个“new”关键字

你能告诉我为什么我们需要用两次吗

function new();
    number = 0; 
endfunction 
提供函数
new()
的实现。当我们打电话时:

MyClass test1=new()

我们正在创建
test1
。为了创建它,我们调用函数
new()
,我们在上面定义了它的实现。当我们调用
new()
时,它将确保
test1
的属性
number
初始化为0(因为这就是
new()
内部发生的情况)

我希望我的解释清楚

function new();
    number = 0; 
endfunction