1

有没有人有办法在工厂注册虚拟课程?使用 object_utils 宏将定义 type_id::create(...) 方法,该方法为非法的虚拟类调用 new(...)。

自然,在工厂注册的任何虚拟类都必须有类型覆盖。如果有人对此有一个优雅的解决方案,那就太酷了。

4

1 回答 1

2

不幸的是,如果不重新创建自己的工厂,则无法在 UVM 中使用虚拟类来执行此操作。但是,您可以检测此类的 build_phase() 以检查该类是否已被覆盖。无论哪种方式,您都无法在运行时进行检查。所以你失去了虚拟类提供的编译器检查,所以为什么还要使用它。

于 2014-03-05T16:20:22.347 回答