2022年Delphi学习-OOP 中的双刃剑Delphi教程.docx
《2022年Delphi学习-OOP 中的双刃剑Delphi教程.docx》由会员分享,可在线阅读,更多相关《2022年Delphi学习-OOP 中的双刃剑Delphi教程.docx(6页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、2022年Delphi学习:OOP 中的双刃剑Delphi教程 前几天看一份特别出名的商业控件的源码,发觉一个特别好玩的用法: Integer(xxx) :=aaa; Tttt(xxx) := bbb;细细品尝,发觉利用这种用法往往可以收到意想不到的效果:比如: TTestRec = record A, B, C: Integer; end; TTestCls = class private FInner: TTestRec; FReadOnlyValue: Integer; function GetNewInner: PTestRec; public property Inner: TTes
2、tRec read FInner write FInner; property NewInner: PTestRec read GetNewInner; property ReadOnlyValue: Integer read FReadOnlyValue; end;你会发觉,干脆的你是改不了 aTestCls.Inner.A 的(编译时 delphi 干脆报错,因为 delphi7 中两个 recode 赋值是 copy memory 而不是简洁的“传址”! procedure TForm1.Button1Click(Sender: TObject);begin with TTestCls.
3、Create do try / Inner.A := 10; Caption := TButton(Sender).Caption + A := + IntToStr(Inner.A); finally Free; end; end;可是,假如我们知道在访问这个 Inner 时 delphi 在编译干脆 FInner 的地址,那么,结合上面那种好玩的用法:procedure TForm1.Button3Click(Sender: TObject);var p: PInteger; begin with TTestCls.Create do try p := (Inner.A); Integer
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年Delphi学习-OOP 中的双刃剑Delphi教程 2022 Delphi 学习 OOP 中的 双刃剑 教程
限制150内