看板 Perl 關於我們 聯絡資訊
my $object1=new class(); ......$object1 處理了一些事情。 my $object2=new class(); 用$object2=$object1; 這應該只是把$object2「參考」到$object1 他們2個應該指得還是同一個地方,不能獨立出來。 我想把$object1 「複製」給 $object2,該如何用? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.250.199.152
paulpu:寫個sub replicate吧 02/24 11:58
paulpu:$o2=\解參照$o1 02/24 12:01
paulpu:最後記得要bless一下 02/24 12:11
LyinZ:$object2 = bless {%$object1}, class 02/24 12:50
billmax:這個方式不行,oj1 跟 oj2 還是參考在一起。 02/24 14:40
paulpu:要看您的資料結構:%是其中一種 所謂解參照要遞迴解下去ㄅ? 02/24 16:36
paulpu:可以建個sub用Storable的freeze $o1再thaw出來bless? 02/24 16:45
paulpu:我的意思是如果您物件的參數存法是binary tree之類的 02/24 16:48
billmax:我的資料結講很簡單,只是hash裡存放一些資料而已 02/25 00:02
billmax:您說的方式還不是很了解,我對類別還不是非常的懂, 02/25 00:05
billmax:不過還是謝謝您! 02/25 00:05
paulpu:試試看: $o2=\%$o1;bless $o2,'class'; ㄅ 02/25 00:17
paulpu:四樓 02/25 00:33
paulpu: %$o2=%$o1; 02/25 00:44
paulpu:tmtowtdi 02/25 00:50