青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

S.l.e!ep.¢%

像打了激速一樣,以四倍的速度運轉,開心的工作
簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
posts - 1098, comments - 335, trackbacks - 0, articles - 1
  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

關于delphi Assigned

Posted on 2010-08-20 14:08 S.l.e!ep.¢% 閱讀(671) 評論(0)  編輯 收藏 引用 所屬分類: Delphi
關于delphi Assigned
2009-02-24 08:09

1. 根據 Delphi 指令參考手冊中

說明:
Assigned
函式在參數不為 nil 時傳回 True, 表示指針已經指到某個內存地址,這個內存地址可能是一個對象地首地址,也可能在函數或過程中,聲明一個指針變量,沒有賦值為 nil ,無亂的指向某處,這兩個種情況, Assigned (指針變量)都不為 nil , 函數放回 True

而參數為 nil 時則傳回 False


Assigned
并不是一個真正的函數。

技巧:
用呼叫 Assigned 的方式來取代直接把參數拿來和 nil 比較,效率會更好。

2. 這個問題要從內存方面來解釋
當你建構一個物件 SomeComponet.Create(Owner);
系統會有一個指針指向這個對象
當你解構一個物件 SomeComponet.Free;
系統會將指針指到的東西殺掉,但是指標還是指在相同的位置
請注意計算機的資源是有限的,
所以可能下一步你的程序要跟系統要資源,
剛才的指針位置,就出現了其它的數據
If Assigned(SomeComponet) then SomeComponet := nil;
先檢查這個對象有沒有在其它地方被設成 nil
然后再將它設成 nil

當我們無法預測使用者會如何操爆他的計算機,
程序員必須留意內存的管理。 小弟淺見 ...


3
function Assigned(var P): Boolean;

Description

Use Assigned to determine whether the pointer or procedure referenced by P is nil. P must be a variable reference of a pointer or procedural type. Assigned(P) corresponds to the test P<> nil for a pointer variable, and @P <> nil for a procedural variable.

Assigned returns False if P is nil, True otherwise.

檢查指針指向的參考變量或過程是否為 nil

每次我通常的處理方法都是:

if assigned(frm) then frm.close;?? 但是當下次調用時就會出錯。為什么呢,直到咋天我才知道原因

frm.close;frm.free; 只是指定這塊內存可以重寫,并未釋放為 NIL 因此當下次調用時即使 frm.free 已經

執行過 assigned(frm) 仍為 TRUE ,再次釋放 frm.Close 或者 frm.free 肯定會報錯;應為 frm.Close frm.free 是釋放 對象指針 frm 指向的內存空間,在上次已經釋放調了,但是 frm 本身并沒有 初始化為 nil , 相反它還是指向被釋放的內存地址;東西已經沒有了,沒有地東西去釋放,不報錯錯才怪。

正確的處理方法:

if assigned(frm) then
begin
?? frm.close;
?? frm:=nil;
end;

:

if assigned(frm) then
begin
frm.close;
freeandnil(frm);
end;

// 可以測試一些就能真正理解 FreeAndNil Assigned 函數地使用方法了;

procedure FreeAndNil(var Obj);

Description

Use FreeAndNil to ensure that a variable is nil after you free the object it references. Pass any variable that represents an object as the Obj parameter.

var P: Pointer;

begin
P := nil;
if Assigned (P) then Writeln ('You won''t see this');
GetMem(P, 1024); {P valid}
FreeMem(P, 1024); {P no longer valid and still not nil}
if Assigned (P) then Writeln ('You''ll see this');
end;


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲经典三级| 欧美精品电影| 亚洲国产美国国产综合一区二区| 午夜国产不卡在线观看视频| 亚洲视频在线看| 香港久久久电影| 久久久久久综合| 欧美大片国产精品| 亚洲精品久久视频| 亚洲一区日韩| 久久久国产一区二区三区| 久久久视频精品| 欧美久久一级| 国产日韩免费| 亚洲区欧美区| 午夜亚洲一区| 欧美激情自拍| 亚洲综合视频在线| 美女视频一区免费观看| 欧美午夜精品久久久久久孕妇| 国产欧美欧美| 亚洲欧洲免费视频| 欧美一级日韩一级| 亚洲国产高清在线| 亚洲欧美日韩另类精品一区二区三区| 久久精品国产欧美亚洲人人爽| 欧美a级一区二区| 国产乱子伦一区二区三区国色天香 | 亚洲六月丁香色婷婷综合久久| 亚洲尤物影院| 欧美3dxxxxhd| 亚洲综合视频1区| 欧美国产视频一区二区| 国产性猛交xxxx免费看久久| 亚洲乱码国产乱码精品精| 久久精品国产77777蜜臀| 欧美国产精品| 国产精品久久久久久久久久三级| 欧美三区在线视频| 亚洲精品一区在线观看| 久久久亚洲综合| 亚洲午夜日本在线观看| 免费观看亚洲视频大全| 国模精品一区二区三区| 亚洲欧美日韩成人高清在线一区| 欧美激情成人在线| 久久久99爱| 国内精品久久久久影院色| 亚洲主播在线| 夜夜爽av福利精品导航| 欧美激情综合| 日韩亚洲精品电影| 91久久久亚洲精品| 欧美成人自拍视频| 亚洲精品国产视频| 亚洲电影中文字幕| 美女福利精品视频| 亚洲激情欧美激情| 亚洲二区视频| 欧美精品高清视频| 99精品热6080yy久久| 亚洲精品久久在线| 欧美深夜影院| 午夜久久资源| 久久国产乱子精品免费女 | 亚洲专区一二三| 国产精品成人观看视频免费| 一区二区三区精品| 一本色道久久加勒比88综合 | 国际精品欧美精品 | 99精品视频免费观看| 欧美美女日韩| 亚洲免费一在线| 午夜精品久久久久久久99黑人| 国产精品一区在线观看| 欧美一级理论性理论a| 欧美在线一二三区| 悠悠资源网久久精品| 亚洲国产mv| 欧美午夜在线观看| 老司机精品视频网站| 欧美成人网在线| 亚洲在线成人精品| 久久精品免视看| 亚洲精品一区中文| 这里只有精品视频在线| 韩日欧美一区二区三区| 欧美va天堂va视频va在线| 欧美激情aⅴ一区二区三区| 亚洲一区二区三区精品动漫| 校园激情久久| 99视频精品| 久久噜噜噜精品国产亚洲综合| 亚洲精品一区二区三区樱花 | 亚洲美女免费精品视频在线观看| 亚洲国产一区二区三区a毛片| 欧美日韩一区二区三区在线 | 欧美日韩国产色视频| 午夜精品久久久99热福利| 久久综合激情| 性欧美暴力猛交69hd| 欧美 日韩 国产在线| 午夜精品剧场| 欧美日韩成人综合在线一区二区| 欧美在线资源| 欧美三级韩国三级日本三斤| 老**午夜毛片一区二区三区| 国产精品久久久一本精品| 亚洲精品国产欧美| 曰本成人黄色| 亚洲一区在线播放| av成人激情| 欧美不卡视频| 美女网站在线免费欧美精品| 国产精品毛片大码女人| 亚洲黄一区二区| 亚洲国产1区| 久久激情五月激情| 欧美一区二区免费| 国产精品久久久久久久久久ktv| 亚洲福利国产精品| 亚洲国产福利在线| 久久久一区二区| 久久一二三区| 国产在线国偷精品产拍免费yy| 亚洲天堂网在线观看| 一区二区三欧美| 欧美另类极品videosbest最新版本| 欧美91精品| 亚洲电影成人| 六月丁香综合| 亚洲国产一区二区视频| 亚洲欧洲精品一区| 麻豆久久久9性大片| 欧美成人午夜激情在线| 一区二区在线免费观看| 久久久久免费观看| 免费观看在线综合色| 在线免费观看欧美| 欧美.www| 日韩一级视频免费观看在线| 99精品国产热久久91蜜凸| 欧美日韩大片| 亚洲素人在线| 久久免费国产| 亚洲人成小说网站色在线| 欧美日韩成人在线观看| 亚洲性图久久| 久久综合网络一区二区| 在线观看视频亚洲| 欧美激情一二区| 在线视频日韩精品| 久久精品91久久久久久再现| 极品中文字幕一区| 欧美电影免费网站| 一区二区高清视频| 久久久久在线观看| 夜夜嗨av一区二区三区中文字幕 | 在线观看91久久久久久| 欧美一区二区福利在线| 久久在线免费观看视频| 亚洲人午夜精品免费| 欧美午夜精品久久久久久孕妇| 亚洲字幕一区二区| 男人插女人欧美| 一区二区三区四区国产| 国产精品一二三| 久久久噜久噜久久综合| 亚洲精品在线一区二区| 欧美在线视频一区二区| 亚洲高清毛片| 国产精品免费视频xxxx| 久久夜色精品| 亚洲美女视频在线免费观看| 欧美一区二区在线免费播放| 亚洲国产欧美在线人成| 国产精品黄视频| 欧美二区乱c少妇| 香港久久久电影| 99热免费精品在线观看| 久久精品中文字幕免费mv| 日韩午夜电影| 激情综合自拍| 国产精品视区| 欧美精品午夜| 久久超碰97中文字幕| av成人免费在线| 亚洲国产天堂久久综合网| 久久久免费精品| 欧美一区二区三区在线免费观看| 亚洲精品一区二| 一区二区在线看| 国产日韩欧美电影在线观看| 欧美日韩亚洲一区二| 男男成人高潮片免费网站| 欧美在线视频观看| 午夜日韩视频| 午夜在线视频观看日韩17c| 一区二区三区高清在线| 亚洲激情校园春色|