Lazarus关键字
1.absolute//它使得你能够创建一个新变量, 并且该变量的起始地址与另一个变量相同.
var Str: string[32]; StrLen: Byte absolute Str; //这个声明指定了变量StrLen起始地址与Str相同. //由于字符串的第0个位置保存了字符串的长度, 所以StrLen的值即字符串长度. begin Str := 'abc'; Edit1.Text := IntToStr(StrLen); end;
2.specialize
3.override 与 overload
override:覆盖
要实现虚方法或动态方法,在声明中包含virtual或dynamic指示字。虚方法和动态方法能在派生类中被覆盖。
要覆盖一个方法,使用override指示字重新声明它就可以了。
overload重载
一个方法可以使用overload指示字来重新声明,当在派生类中调用此方法时,依靠参数来决定到底调用哪一个。
4.无类型指针的定义。C中有void *类型,也就是可以指向任何类型数据的指针。Object Pascal为其定义了一个专门的类型:Pointer。于是,
ptr : Pointer;
就与C中的
void *ptr;
等价了。