符号“::*”在 SystemVerilog 中是什么意思?

What does the notation "::*" mean in SystemVerilog?

此示例取自 uvm_users_guide_1.1,第 27 页:

`timescale 1ns/1ps

 package a_pkg;
  class a;
    function void f(inout time t);
     t += 10ns;
    endfunction
  endclass
 endpackage


 program p;
   import a_pkg::*;
   ...
 endprogram

::. 一样吗? * 代表什么?

请参阅 IEEE 标准 1800-2017,第 26.3 节引用包中的数据::* 语法是通配符导入,定义为:

A wildcard import allows all identifiers declared within a package to be imported provided the identifier is not otherwise defined in the importing scope

:: 是包范围解析运算符。 * 允许导入所有标识符,而不是显式导入名称标识符。

在您的示例中,它允许访问 p 程序中的 a class。