Delphi入门
- 一、初识
- 1.单元文件
- 1.1 interface部分
- 1.2 implementation部分
- 1.3 initialization部分
- 1.4 finalization部分
- 二、基本数据类型
- 1.定义一个变量
- 1.1 变量的声明
- 1.2 变量的赋值
- 1.3 变量的定义
- 2.定义一个常量
- 3.定义一个枚举类型
- 4.定义一个子界
- 5.定义一个集合
- 5.1 集合的赋值
- 5.2 集合的并交差运算
- 5.3 集合的关系运算
- 6.定义一个记录类型
- 7.定义一个指针类型
- 三、运算符
一、初识
1.单元文件
在 Delphi 中,单元(Unit)是组织代码的基本结构。每个单元通常包括接口部分、实现部分以及可选的初始化和结束部分。
一个 Delphi 单元文件(.pas
文件)通常分为四个主要部分:
interface
:接口部分,声明对外可见的常量、类型、变量和过程/函数。implementation
:实现部分,定义接口部分声明的过程/函数的具体实现。initialization
:初始化部分,包含单元初始化时要执行的代码(可选)。finalization
:结束部分,包含单元结束时要执行的代码(可选)。
1.1 interface部分
用途:
interface
部分声明单元对外公开的内容,包括常量、类型、变量、过程和函数等。这些声明可以被其他引用此单元的单元或程序使用。
组成:
uses
:声明此单元依赖的其他单元。任何放在uses
子句中的单元都将被引入并可用于当前单元的接口部分。- 声明的常量、类型、变量、过程和函数等。
1.2 implementation部分
用途:implementation
部分包含了 interface
部分中声明的过程和函数的实现细节。这部分的内容对于使用该单元的其他单元或程序是不可见的。
组成:
uses
:如果需要在实现部分引用其他单元,这里可以再次使用uses
子句声明。这部分的uses
子句仅对实现部分有效。- 具体的过程和函数的实现代码。
1.3 initialization部分
用途:initialization
部分用于定义单元初始化时要执行的代码。当单元被加载时,这部分代码会自动执行。
注意:在 initialization
部分中,你可以执行一些初始化操作,如变量的初始赋值、对象的创建等。
1.4 finalization部分
用途:finalization
部分定义了在单元卸载时要执行的代码,通常用于清理资源、释放内存等操作。
注意:这部分的代码在程序退出时自动执行。
二、基本数据类型
- 整型:
- 实数:
- 字符类型
- 布尔类型
1.定义一个变量
1.1 变量的声明
var 变量名:数据类型;
1.2 变量的赋值
变量名:=变量的值;
1.3 变量的定义
2.定义一个常量
- 不指定常量类型
- 指定常量类型
3.定义一个枚举类型
4.定义一个子界
“子界”(Subrange)是 Pascal 语言中的一个概念,它允许程序员定义一个变量的取值范围,以确保该变量只接受特定范围内的值。这在编写安全和高效的代码时非常有用,因为它通过限制值的范围来减少错误的发生。子界类型可以用于整数、字符和枚举类型等。
type
子界名 = 下界..上界;
5.定义一个集合
在 Pascal 语言中,集合(Set)是一种非常有用的数据结构,它可以存储一组同一类型的元素,并且提供了方便的操作来检查元素是否属于集合、添加或删除元素、以及进行集合的并集、交集和差集操作。
语法:
type
SetName = set of ElementType;
5.1 集合的赋值
5.2 集合的并交差运算
5.3 集合的关系运算
6.定义一个记录类型
在 Pascal 中,记录类型(Record)是一种非常有用的数据结构,用于将不同类型的多个数据元素组合在一起,形成一个逻辑上的整体。这种类型特别适合表示复杂的数据结构,比如表示学生信息、员工信息、点的坐标等。
- 实现一个学生信息管理系统
7.定义一个指针类型
指针是一个变量,它存储另一个变量的内存地址。通过指针,你可以访问、修改该地址中的数据。
var
P: ^Integer; // 声明一个指向 Integer 类型的指针
X: Integer;
begin
X := 42;
P := @X; // P 指向变量 X 的地址
Writeln(P^); // 输出 42,即通过指针访问 X 的值
end;
在这个例子中,P
是一个指向 Integer
类型的指针。@X
取得变量 X
的内存地址,然后将其赋值给 P
。P^
表示指针 P
指向的地址所存储的值,即 X
的值。
指针在动态内存分配中非常重要。Delphi 提供了 New
和 Dispose
过程来分配和释放内存。
New
:为指针分配内存。Dispose
:释放指针所指向的内存。
var
P: ^Integer;
begin
New(P); // 分配内存
P^ := 100; // 给指针指向的内存赋值
Writeln(P^); // 输出 100
Dispose(P); // 释放内存
end;
三、运算符
- 算术运算符: + - / * div(整除) mod(求模、求余数)
- 关系运算符