当前位置: 首页 > news >正文

#C8# UVM中的factory机制 #S8.5# 对factory机制的重载进一步思考(二)

今天我们反思,然后总结。

一 先看代码

`timescale 1ns/1ps
module tb_top;

class Base;
  function void print(int a);
    $display("Base: int = %0d", a);
  endfunction
endclass

class Sub extends Base;
  function void print(string s);
    $display("Sub: string = %s", s);
  endfunction
endclass

initial begin

Sub s = new;
s.print("hello"); // 合法,输出 "Sub: string = hello"
s.print(10);      // 可能报出编译错误!找不到匹配的print(int),也可能不错报

end

endmodule

在SystemVerilog中,当子类定义了一个与基类同名的方法(即使参数列表不同),基类的同名方法会被隐藏

这是因为SystemVerilog的作用域规则规定:子类中的方法名会覆盖基类中的所有同名方法,无论参数是否匹配。<

相关文章:

  • Hyperlane:Rust Web开发的未来,释放极致性能与简洁之美
  • 2025-3-29算法打卡
  • epoll 和ractor模型学习
  • Docker 的实质作用是什么
  • Blender多摄像机怎么指定相机渲染图像
  • 《数据结构:单链表》
  • 最常使用的现代C++新特性介绍
  • 复古半色调褶皱照片效果ps特效滤镜样机 Halftone Crumpled Paper Effect
  • 通过本地部署 DeepSeek 来协助感光材料研发(配方设计和有机合成等方面)的一般步骤和思路
  • docker(2) -- 启动后修改目录和网络
  • CUDA Kernel中的Load/Store指令对L1/L2缓存的影响
  • K8S学习之基础六十二:helm部署memcached服务
  • 如何使用 CSS 的backdrop - filter属性实现背景模糊等特效,有哪些兼容性问题?
  • C#测试调用LM Studio服务接口
  • Netty——启动流程
  • Next.js build 完成后卡住
  • JavaScript 事件处理机制详解
  • 归档重做日志archived log (明显) 比redo log重做日志文件小
  • 模型压缩(量化、剪枝、蒸馏、低秩分解)
  • Go 语言中,关于客户端初始化的最佳实践
  • 五一“大车流”来了,今日午后G40沪陕高速开始迎来出沪高峰
  • 外交部:对伊朗拉贾伊港口爆炸事件遇难者表示深切哀悼
  • A股三大股指收跌:地产股领跌,银行股再度走强
  • 美加征“对等关税”后,调研显示近半外贸企业将减少对美业务
  • 四川落马厅官周海琦受审,1000多人接受警示教育
  • 三杀皇马剑指四冠,硬扛到底的巴萨,赢球又赢人