当前位置: 首页 > 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 语言中,关于客户端初始化的最佳实践
  • 龚正会见委内瑞拉副总统罗德里格斯
  • 国家发展改革委:我们对实现今年经济社会发展目标任务充满信心
  • 夜读丨庭院春韵
  • 今年3月全国查处违反中央八项规定精神问题16994起
  • 涨价应对关税变化是短期之策,跨境电商塑造新品牌开辟“新蓝海”
  • ​王毅会见塔吉克斯坦外长穆赫里丁