本文整理自网络,侵删。
Delphi结构体的方法与类的方法几乎是一致的,主要区别是内存的管理方式和可见性不同。
//定义type TMyStruct = record No: Integer; Name: string; function ToString: string; end;//实现function TMyStruct.ToString: string;begin Result := Format('No:%d, Name:%s', [Self.No, Self.Name]);end;//调用var ms: TMyStruct; s: string;begin s := ms.ToString;end;
类型的方法DelphiDelphi 2009以后,类型也可以有方法,最常用的是各基本类型的ToString方法。Integer类型的方法源码如下:
//Integer 类型的方法声明TIntegerHelper = record helper for Integer { for LongInt type too } public const MaxValue = 2147483647; MinValue = -2147483648; function ToString: string; overload; inline; function ToBoolean: Boolean; inline; function ToHexString: string; overload; inline; function ToHexString(const MinDigits: Word): string; overload; inline; function ToSingle: Single; inline; function ToDouble: Double; inline; function ToExtended: Extended; inline; class function Size: Integer; inline; static; class function ToString(const Value: Integer): string; overload; inline; static; class function Parse(const S: string): Integer; inline; static; class function TryParse(const S: string; out Value: Integer): Boolean; inline; static; end;
//Integer 类型的 ToString 方法实现function TIntegerHelper.ToString: string;begin Result := IntToStr(Self);end;可以看出,Delphi类型的方法是在结构体方法的基础上实现的。
来源:https://my.oschina.net/afrusrsc/blog/3136646
相关阅读 >>
Delphi 采用 tidhttp 访问 https 的网站,采用 tidtcpclient 访问 https 的网站
Delphi sysutils.comparetext的注释
更多相关阅读请进入《Delphi》频道 >>