1、object关键字相当于C++中的struct, record定义个结构体只能定义数据,而object可以定义方法,默认都是public的。
代码示例如下:
TTest = record name: string; age: Integer; end; TTest2 = object name: string; age: Integer; function _Info: string; end; function TTest2._Info: string; begin Result := name + ‘ is ‘ + IntToStr(age) + ‘ years old.‘ end;
2、absolute关键字 【Absolute address(绝对地址)】
你可以创建一个新变量,它和另一个变量在内存的同一个位置。要这样做的话,声明这个新变量时在类
型名的后面跟关键字absolute,后面再跟一个已存在(先前声明)的变量。比如,
var Str: string[32]; StrLen: Byte absoluteStr;
指定变量StrLen从Str的地址开始。因为短字符串的第一个字节包含字符串的长度,StrLen的值就是Str
的长度。
使用absolute声明时不能初始化变量,也不能组合其它指示字(和absolute一同使用)。
时间: 2024-11-05 19:04:18