【发布时间】:2015-01-16 17:35:24
【问题描述】:
我在一些 Specman e 代码示例中看到了 :=(冒号等号)的使用,例如:
var regs_type := rf_manager.get_exact_subtype_of_instance(graphics_regs);
我们何时以及为什么应该使用 := ? 感谢您的帮助。
【问题讨论】:
标签: syntax specman e colon-equals
我在一些 Specman e 代码示例中看到了 :=(冒号等号)的使用,例如:
var regs_type := rf_manager.get_exact_subtype_of_instance(graphics_regs);
我们何时以及为什么应该使用 := ? 感谢您的帮助。
【问题讨论】:
标签: syntax specman e colon-equals
:= 表示声明右侧表达式返回的类型的变量并将其分配给该值。基本上,在您的示例中,函数get_exact_subtype_of_instance(...) 返回一个rf_struct 类型的值。 regs_type 变量将被声明为该类型。
这段代码等价于(但短于):
var regs_type : rf_struct = rf_manager.get_exact_subtype_of_instance(graphics_regs);
这种语法在强制转换时特别有用:
var foo := some_struct.as_a(FOO some_struct_type);
【讨论】: