资料来源
(1) The UVM Primer;
(2) sv绿皮书;
1.copy(要点是需要先例化)
(1) copy对象不像想象的那么简单,简单的赋值语句obj2_h=obj1_h,并没有为obj2_h创建一个新的对象,而是指向了与obj1_h相同的对象;
(2) 为了真正的copy一个对象,需要先例化,然后copy data,如下图所示;
![](https://www.icode9.com/i/l/?n=20&i=blog/796469/202201/796469-20220114111148663-1761043878.png)
![](https://www.icode9.com/i/l/?n=20&i=blog/796469/202201/796469-20220114111849613-1812385403.png)
![](https://www.icode9.com/i/l/?n=20&i=blog/796469/202201/796469-20220114111918090-522512901.png)
![](https://www.icode9.com/i/l/?n=20&i=blog/796469/202201/796469-20220114111955462-374769679.png)
2.Deep copy(需要调用类所包含的所有对象的copy函数)
![](https://www.icode9.com/i/l/?n=20&i=blog/796469/202201/796469-20220114112614835-1575242963.png)
![](https://www.icode9.com/i/l/?n=20&i=blog/796469/202201/796469-20220114112631784-762237919.png)
![](https://www.icode9.com/i/l/?n=20&i=blog/796469/202201/796469-20220114112650578-748633923.png)
![](https://www.icode9.com/i/l/?n=20&i=blog/796469/202201/796469-20220114112720659-756804258.png)
标签:obj1,obj2,对象,先例,需要,深度,操作,copy
来源: https://www.cnblogs.com/csjt/p/15801183.html