首页 > 其他 > 详细

SV-对象复制和赋值问题(华为2020实习生机试)

时间:2020-05-01 16:22:05      阅读:117      评论:0      收藏:0      [点我收藏+]

原题

class Thing;
		int data;
endclass

module test();
Thing t1,t2,t3;
initial begin
	t1 = new();
	t1.data=3;
	t2=new();
	t2.data=4;
	t3 = new t2;

	t2=t1;
	t2.data=8;

	$display("t1.data:%0d\n",t1.data);   //8,t2新赋的值给到t1,说明t2句柄指到了t1的存储空间
	$display("t2.data:%0d\n",t2.data);   //8
	$display("t3.data:%0d\n",t3.data);   //4,t2新赋的值没有给到t3,说明通过new复制的对象本身是有int data的存储空间的

	t2 = t3;
	t3.data=8;
	$display("t3.data:%0d\n",t3.data);   //8
	
end

endmodule

解释

句柄就像指针

SV-对象复制和赋值问题(华为2020实习生机试)

原文:https://www.cnblogs.com/wt-seu/p/12813581.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!