1.标识符与保留字 在Object Pascal中,符号由一个或多个字符组成,是最基本的语言元素。 1.1标识符 标识符是ObjectPascal语言中变量、常量、类型、过程、函数、方法、单元等的名称。 标准标识符标准标识符是ObjectPascal语言预先分配给标准函数、标准过程、标准类型、标准常量、标准文件使用的标识符。标准常量 如:False、True、Maxint等标准类型 如:Boolean、Char、Real等标准函数 如:Sin、Cos、Abs、Arctan等标准过程 如:Dispose、Get、New、Pack、Put等标准文件 如:Input、Output等 自定义标识符自定义标识符是根据程序设计的需要,自己定义的常量、变量、类型、函数、过程等的名称。在Object Pascal中定义标识符的规则: 1.标识符不区分大小写 2.标识符只能以字母或下划线开头 3.标识符可以是任意长度,但只有前255个字符有效 4.标识符中间不允许有空格 5.不允许使用Object Pascal保留字作为标识符 限定标识符在Object Pascal中可以引用多个单元,而各个单元中的全局变量、函数、过程等可能会重名,所以,在程序中引用时需要使用限定标识符来区分。如: Var Y : real ; Y : = System . cos ( pi ); 代码中的System就是限定标识符,限定cos标识符是System单元中声明的标识符。1.2保留字 保留字时系统规定的,具有特殊意义和用途的单词,在编程时不能被重新定义。Object Pascal中定义了65个保留字: 保留字 and array as asm begin case class Const constructor destructor dispinterface p do downto else end except exports file finalization finally for function goto if implementation in inherite initialization inline is interface label library mod Nil not object of or out packed procedure program property raise record repeat resourcestring set shl shr string then threadvar to try type until unit uses var while with xor 1.3指令符 指令符也是具有特殊意义的单词。指令符只在特殊的程序位置或当上下文关联时有意义的程序片段中使用,在其他场合可以对其进行重新定义。Object Pascal中规定了39个指令符: 指令符 absolute abstract assembler automated cdecl contains default dispid dynamic export external far forward implements index message name near nodefault overload override package pascal private protected public published read readonly register reintroduce requires resident safecall stdcall stored virtual write writeonly 1.4保留字和指令符汇总 保留字或指令符 用途 absolute 指令(变量) abstract 指令(方法) and 运算符(布尔) array 类型 as 运算符(RTTI) asm 语句 assembler 向后兼容(汇编) at 语句(异常处理) automated 访问类别符(类) begin 块标记 case 语句 cdecl 函数调用协定 class 类型 const 声明或指令(参数) constructor 特殊方法 contains 运算符(集合) default 指令(属性) destructor 特殊方法 dispid dispinterface 接口类别符 dispinterface 类型 p 运算符 do 语句 downto 语句(for) dynamic 指令(方法) else 语句(if或case) end 块标记 except 语句(异常处理) export 向后兼容(类) exports 声明 external 指令(函数) far 向后兼容(类) file 类型 finalization 单元结构 finally 语句(异常处理) for 语句 forward 函数指令 function 声明 goto 语句 if 语句 implementation 单元结构 implements 指令(属性) in 运算符(集合) index 指令(dispinterface 接口) inherited 语句 initialization 单元结构 inline 向后兼容(见asm) interface 类型 is 运算符(RTTI) label 声明 library 程序结构 message 指令(方法) mod 运算符(数学) name 指令(函数) near 向后兼容(类) nil 数值 nodefault 指令(属性) not 运算符(布尔) object 向后兼容(类) of 语句(case) on 语句(异常处理) or 运算符(布尔) out 指令(参数) overload 函数指令 override 函数指令 package 程序结构(控件包) packed 指令(记录) pascal 函数调用协定 private 访问类别符(class) procedure 声明 program 程序结构 property 声明 protected 访问类别符(类) public 访问类别符(类) published 访问类别符(类) raise 语句(异常处理) read 属性类别符 readonly dispatch 接口类别符 record 类型 register 函数调用协定 reintroduce 函数指令 repeat 语句 requires 程序结构(控件包) resident 指令(函数) resourcestring 类型 safecall 函数调用协定 set 类型 shl 运算符(数学) shr 运算符(数学) stdcall 函数调用协定 stored 指令(属性) string 类型 then 语句(if) threadvar 声明 to 语句(for) try 语句(异常处理) type 声明 unit 单元结构 until 语句 uses 单元结构 var 声明 virtual 指令(方法) while 语句 with 语句 write 属性类别符 writeonly dispatch 接口类别符 xor 运算符(布尔) 1.5注释 Object Pascal语言中的注释: 组合符号 { 与 } 成对使用表示被包括的内容为注释内容。 组合符号 (* 与 *) 成对使用表示被包括的内容为注释内容。 符号 // 的单个使用表示所在行的该符号之后的内容为注释内容。 例如: {花括号注释} (*圆括号/星号注释*) //C++风格的注释 注意,相同类型的注释不要嵌套使用。虽然不同类型的注释进行嵌套在语法上是合法的,但不建议这样做。例如: {(*这是合法的*)} (*{这是合法的}*) (*(*这是非法的*)*) {{这是非法的}}