|
发表于 2025-8-11 14:58:45
|
显示全部楼层
这里介绍的是OOP, 不是systemverilog. 如果是C++, 垃圾回收(内存回收)不是自动的, 但是systemverilog帮你做了这个事情, 所以在SV中, 只要没有handle指向的object, 就会自动回收, 因此SV的垃圾回收时自动的.
这里例子的意思是, 房子的位置(address)就像是内存的空间, 都是固定位置的, 你再这个地方建了个房子, 不要了, 那需要烧掉(垃圾回收), 然后在新建一个.
所以不要看这些类比, 类比经常就把事情比错, 就像把电流比作水流, 很多情况下可以类比, 但是完全不一样. 想要成为专家就不要看类比, 是什么就是什么.
new了一个object, 那么就是在内存里分配了一段空间. class的话, 分配的是类似指针的空间, 大小就是定义这个class里需要的各种信息的大小. 你可以再申请很多指针(handle)指向这个object. 对于SV来说, 当没有handle指向这个object的时候, 他就自动回收了, 不用像C一样去写delete |
|