摘要:
首先我们要知道哪些类型可以用ForIn吧,下面就是:for Element in ArrayExpr doStmt; 数组for Element in StringExpr doStmt; 字符串for Element in SetExpr doStmt; 集合for... 阅读全文
摘要:
因为使用方法参数的不同, 所以有了调用约定.譬如 Delphi 默认的是从左到右读取参数; Window API 是从右到左读取参数.如果没有调用约定, Delphi 就无法使用由 C 语言编写的 Window API;如果没有调用约定, 别的语言也无法使用由 Delphi 编写的 DLL 文... 阅读全文
摘要:
//构造方法就是对象建立时调用的方法; 析构方法就是对象销毁时调用的方法. 如: TMyClass = class(TObject)public constructor Create; {构造方法} destructor Destroy; override; {析构方法... 阅读全文
摘要:
{ 抽象类是一定要被继承才可以使用的; 抽象方法是一定要被覆盖才可以使用的. 现在说的是不能被覆盖的方法, 与不能被继承的类.} //譬如:TA = class procedure Proc; virtual; {TA 中的虚方法, 将要被覆盖}end; TB = class(TA)... 阅读全文
摘要:
//抽象方法类似与接口; 在没有接口的年代 Delphi 是用抽象方法来模拟接口的; 我想它最终会被接口替代. {下面就定义了两个抽象方法}TMyClass = class(TObject) procedure Proc1; virtual; abstract; {抽象方法首先应该... 阅读全文
摘要:
// inherited 就是调用父类方法的一个特殊命令; 举例: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ... 阅读全文
摘要:
//类中的方法重载首先具备前面说过的重载相关的所有特点, 如:TMyClass = class(TObject) function Fun(s: string): string; overload; function Fun(i: Integer): Integer; overload; ... 阅读全文
摘要:
//静态方法是默认的, 如果不是虚方法或纯虚方法, 那它就是一个静态方法. //类方法就是通过类名就可以访问的方法unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Contro... 阅读全文
摘要:
//下面说的数据成员不仅仅指方法TMyClass = class(TObject) function Fun1: string; {公共区域的数据成员在默认状态下会归于 published 区} //所谓默认状态就是编译指令为{$M+}, 如果是{$M-}这些数据成员会归于 public ... 阅读全文
摘要:
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm)... 阅读全文
摘要:
//标准的覆盖是这样的TBass =class procedure Proc; virtual; {或用 dynamic}end; TChild = class(TBass) procedure Proc; override;end;//以下几种情况属于重定义, 其中例 3-5还会有编译提... 阅读全文
摘要:
方法来到类中, 以前的特点基本都在;因为类一般是存在于一个继承链中, 所以就有了一些新的概念, 譬如: 继承、覆盖;也有了很多新名称, 譬如: 静态方法、虚方法、动态方法、抽象方法、类方法、消息方法.先从虚方法与动态方法开始吧//下面的类中就定义了两个虚方法(virtual)、两个动态方法(d... 阅读全文
摘要:
在Delphi中的Record类型中,与之C语言对应的即是结构体类型(struct),也可能是为了符合C语言或C++程序员的习惯,对于它在Delphi中的应用存在的一些问题进行初步的说明。在Delphi中的记录体类型有两种方式定义 Type RecTest = record (packed... 阅读全文