Reference guide for Free Pascal, version 3.2.2
700.37 KB
268 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
英语 | .pdf | 3 |
摘要 | ||
文档详细介绍了Free Pascal 3.2.2版本中的类和对象特性,包括字段和静态变量的声明方式、构造函数与析构函数的使用、汇编语言的整合以及函数和过程的声明。文档还讨论了类型系统,特别是整数类型及其特性,并展示了通过示例代码如何在Pascal代码中嵌入汇编语句。 | ||
AI总结 | ||
《Free Pascal版本3.2.2参考指南》总结如下:
### 《Free Pascal参考指南》总结
**1. 类(Classes)**
- 类字段的两种声明方式:
- 使用`var`块:
```pascal
type cl = class
var l: longint;
end;
```
- 使用静态修饰符`static`:
```pascal
type cl = class
l: longint; static;
end;
```
- 两种方式功能等价,字段初始化为零(或非序贯类型的空值)。
- 字段在内存中的顺序可能因编译器优化而调整,不一定与声明顺序一致,RTTI会反映这种变化。
**2. 对象(Objects)**
- 对象支持构造函数和析构函数,需显式调用。
- 构造函数用于初始化对象,析构函数用于释放资源。
- 如果对象使用虚方法,需定义构造函数以完成内部管理。
**3. 汇编代码**
- Free Pascal支持嵌入汇编代码,但不支持内联汇编宏。
- 使用`Asm`和`End`关键字包裹汇编代码。
- 汇编过程或函数需声明为`Assembler`,代码生成器会进行优化,例如无参数且无局部变量的函数不会生成栈框架。
- 函数返回值需存储在累加器中(整数值)或目标处理器指定的位置(浮点值)。
**4. 函数和过程**
- 支持函数重载。
- 支持变参、常量参数和返回语句。
- 函数和过程的声明可以指定调用约定(如`cdecl`、`stdcall`)和修饰符,常用于与C代码接口或汇编代码交互。
**5. 基础类型**
- 基本类型分为序贯类型和实数类型。
- 序贯类型包括整数、字符、布尔等,其值具有可数性和顺序性。
- 预定义整数类型及其存储大小:
- `Integer`、`Shortint`、`SmallInt`、`Longint`、`Longword`、`Int64`、`QWord`等。
- `Int64`和`QWord`在64位系统上为序贯类型,在32位系统上部分特性受限。
**6. 赋值语句**
- 支持标准Pascal赋值`:=`。
- 支持C风格的复合赋值(如`+=`、`-=`、`*=`、`/=`),需启用`-Sc`编译器开关。
- 指针解引用赋值支持复合操作,如`L^:= 3`。
**总结**
本文档涵盖了Free Pascal语言的核心特性,包括类、对象、汇编代码、函数和过程、基础类型以及赋值语句的使用方法。 |
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
261 页请下载阅读 -
文档评分