所以我在bool_struct.sv中有以下代码:
typedef enum {false=0, true=1} bool;
class my_bool_class;
bool my_bool_value;
function new (bool initial_bool_value)
my_bool_value = initial_bool_value;
endfunction
endclass
在checker.sv中,我想执行以下操作:
class checker;
my_bool_class bool_class_handle = new(true)
endclass
我的问题是,这会编译吗?我想新调用中的“true”将超出typedef的范围,所以它不会。如何在新的工作呼叫中获得“真实”?
答案 0 :(得分:1)
枚举类型的typedef
声明所有标签以及同一级别的枚举(这就是为什么你不能在同一范围内声明两个带有重叠标签的不同枚举)。
您应该始终将typedef
和类声明放在package
中,然后import
放在您要使用的包bool
,{{1} },false
和true
。