全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1765
推到 Plurk!
推到 Facebook!

NewInstance 的使用方式?

答題得分者是:william
x803198
一般會員


發表:8
回覆:28
積分:17
註冊:2002-12-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-08-18 16:40:33 IP:61.219.xxx.xxx 未訂閱
位為前輩請位一下 下面兩種寫法作用一樣,記憶體大小也一樣,有點不太了解 NewInstance 真正的使用時機,麻煩大大可以為我解惑? Var Pa : TList; procedure NewPList_1; Var Temp : TList; begin Pa := TList.Create; Temp := TList.Create; Pa.add(Temp); end; procedure NewPList_2; begin Pa := TList.Create; Pa.add(TList.NewInstance); end; 程式是一條不歸路
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-08-19 09:38:14 IP:147.8.xxx.xxx 未訂閱
In simple words, don't use NewInstance.    http://delphi.ktop.com.tw/link.asp?topic_id=19684
x803198
一般會員


發表:8
回覆:28
積分:17
註冊:2002-12-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-08-19 11:26:10 IP:61.219.xxx.xxx 未訂閱
引言: In simple words, don't use NewInstance. http://delphi.ktop.com.tw/link.asp?topic_id=19684
謝謝板大 這篇文章我也看過了,後來我自己Try有一些心得不曉得對不對 已TList來說 用 Create 跟 NewInstance 都是一樣的,都只是配制記憶體而已 因為 TList 在 Create 的時候沒有初始什麼東西 所以一般都是用 Create 比較安全,所以我的寫法改成下面就好了 procedure NewPList_2; begin Pa := TList.Create; Pa.add(TList.Create); end; 轉載那篇文章的大大範例 obj := TForm1(TForm1.NewInstance); obj.Create(Self); obj.Show; 後來我去看Help,其實寫這樣就好了 obj := TForm1.NewInstance; obj.Create(Self); obj.Show; 因為所有物件都是繼承 TObject,所有NewInstance動作都是 TObject 來配置記憶體,不曉得我說的對不對請指教囉 程式是一條不歸路 發表人 - x803198 於 2003/08/19 11:29:35
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-08-19 12:05:16 IP:147.8.xxx.xxx 未訂閱
Perhaps this article can show some use of NewInstance  < href="http://www.csdn.net/Develop/article/15\15586.shtm">http://www.csdn.net/Develop/article/15\15586.shtm
系統時間:2024-05-10 17:27:23
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!