Delphi入门

news2024/9/21 12:44:23

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 的内存地址,然后将其赋值给 PP^ 表示指针 P 指向的地址所存储的值,即 X 的值。

指针在动态内存分配中非常重要。Delphi 提供了 NewDispose 过程来分配和释放内存。

  • New:为指针分配内存。
  • Dispose:释放指针所指向的内存。
var
  P: ^Integer;
begin
  New(P);       // 分配内存
  P^ := 100;    // 给指针指向的内存赋值
  Writeln(P^);  // 输出 100
  Dispose(P);   // 释放内存
end;

三、运算符

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 算术运算符: + - / * div(整除) mod(求模、求余数)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 关系运算符

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2103144.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Bert-base-chinese训练多分类文本模型(代码详解)

目录 一、简介 二、模型训练 三、模型推理 一、简介 BERT(Bidirectional Encoder Representations from Transformers)是基于深度学习在自然语言处理(NLP)领域近几年出现的、影响深远的创新模型之一。在BERT之前,已…

中国各地级市的海拔标准差

海拔标准差是衡量地理测量准确性的重要指标,它通过计算特定地点的海拔测量值与平均海拔之间的偏差来评估数据的可靠性。较小的标准差意味着测量结果较为一致,而较大的标准差则可能指出数据的波动性或测量误差。 计算方法 海拔标准差的计算遵循以下公式…

科研绘图系列:python语言制标准差的直方图(STD histogram plot)

介绍 密度分布图是一种统计图表,用于表示数据的分布情况。它通常用于展示变量的频率分布,但与直方图不同,密度分布图通过平滑曲线来表示数据的分布,而不是用柱状图来表示。这种图表可以更直观地展示数据的分布形状,如是否对称、是否多峰等。 在密度分布图中,横轴代表数…

如何录制黑神话悟空的游戏BGM导入iPhone手机制作铃声?

在游戏的世界里,总有那么一些旋律,能够触动玩家的心弦,让人难以忘怀。《黑神话悟空》以其精美的画面和动人的背景音乐,赢得了无数玩家的喜爱。如果你也想将游戏中的背景音录制下来,制作成个性化的m4r格式铃声&#xff…

【Go - 每日一小问 ,const 变量存储在哪里,堆还是栈上?】

答:都不是 , 在bss(未初始化数据区) 和 data(初始化数据区)上。 在内存布局上遵循一定规律,Go 进程的内存空间布局由高地址到低地址大致可分为以下几段: 栈(stack): 用户态的栈,栈的大小是固定的,其大小可以使用ulimi…

轿厢电梯-电动车检测数据集(真实电梯监控)

轿厢电动车检测数据集, 可做电梯乘客、电动车检测任务。 数据集由真实电梯监控图片(大约四千)、电动车网图、手机拍摄图片构成,总计14000张左右,其中近8000样本已标注。 注:文件夹后面数字为对应数据集样本…

【C++题解】1241 - 角谷猜想

问题二:1241 - 角谷猜想 类型:有规律的循环、递归。 题目描述: 日本一位中学生发现一个奇妙的定理,请角谷教授证明,而教授无能为力,于是产生了角谷猜想。 猜想的内容:任给一个自然数&#xff…

2024表白墙PHP网站源码

2024表白墙PHP网站源码 正常安装 访问域名即可直接进入安装程序 更新安装 请先备份数据库以及updata文件目录 以防出现意外 以及复制后台“基本配置内容” 然后覆盖目录 访问域名再次进入安装程序 在数据库安装完成后不要进行下一步并删除install文件目录 再将“基本配置内容”…

橘子学ES实战操作之管道类型Ingest pipelines的基本使用

简介 我们在使用ES的时候,经常的用法就是把其他数据源比如Mysql的数据灌到ES中。 借用ES的一些功能来提供数据的全文检索以及聚合分析之类的功能。 在这个灌数据的过程中,我们经常会对数据做一些治理,类似ETL的能力。然后把治理后的数据写入…

List 的介绍

目录 1. 什么是List 2. 常见接口介绍 3. List的使用 1. 什么是List 在集合框架中, List 是一个接口,继承自 Collection 。 Collection 也是一个接口 ,该接口中规范了后序容器中常用的一些方法,具体如下所示: Iterab…

前端学习笔记-Web APIs篇-02

事件监听(绑定) 什么是事件? 事件是在编程时系统内发生的动作或者发生的事情【比如用户在网页上单击一个按钮 】 什么是事件监听? 就是让程序检测是否有事件产生,一旦有事件触发,就立即调用一个函数做出响应&#…

3DMAX建筑魔术师MagicBuilding插件使用方法详解

3DMAX建筑魔术师MagicBuilding,一键创建单个或多个随机楼体,可以用来生成建筑场景中的配景楼,让你快速从繁重的体力劳动中解脱出来! 【建议版本】 3dMax2018及以上版本(不仅限于此范围) *以上只是建议版本…

CRM系统为贷款中介行业插上科技的翅膀

CRM(客户关系管理)系统为贷款中介公司插上了科技的翅膀,极大提升了贷款中介企业的运营效率、客户管理能力和市场竞争力。鑫鹿贷款CRM系统基于互联网、大数据分析、人工智能、云计算等前沿技术,帮助贷款中介公司实现业务流程的自动…

Lua中大量注释后取消

在Lua中注释掉一些调试的代码之后,逐个去取消掉又十分耗时麻烦,调试的信息可以像下面这样写, 大量取消的时候可以直接搜索替换。

性能测试⼯具-——JMeter

目录 JMeter介绍下载JMeter的基本使用流程关键组件介绍常见测试场景与分析方法JMeter插件的扩展7. 结论 JMeter介绍 性能测试是软件开发过程中至关重要的一环,尤其是在当今高并发、大数据的应用场景下。性能测试不仅可以帮助开发团队发现系统的瓶颈,还能…

026集——在旧式编码与 Unicode 之间转换(C# 编程指南)——C#学习笔记

在 C# 中,内存中的所有字符串都是按 Unicode (UTF-16) 编码的。将数据从存储器移动到 string 对象中后,数据将自动转换为 UTF-16。如果数据仅包含从 0 到 127 的 ASCII 值,则此转换无需您执行任何额外的工作。但若源文本包含扩展的 ASCII 字节…

检索增强型语言模型——更可靠、可适应、可归因的下一代语言模型

人工智能咨询培训老师叶梓 转载标明出处 传统的参数化语言模型通过大规模的网络数据训练,虽然具备一定的灵活性和能力,但它们在处理具体任务时存在以下主要问题: 事实错误:模型可能会产生与事实不符的信息,即“幻觉”…

OpenCV从入门到精通——角点特征点提取匹配算法实战

harris角点 角点可以是两个边缘的角点;角点是邻域内具有两个主方向的特征点;角点通常被定义为两条边的交点,更严格的说,角点的局部邻域应该具有两个不同区域的不同方向的边界。或者说,角点就是多条轮廓线之间的交点。…

完善补环境框架 bx_et 分析

声明: 本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关! 有相关问题请第一时间头像私信联系我…

win10 +git配置+学习笔记

git简介:git是一个分布式版本控制软件,用于有效、高速地处理从小到大的项目版本管理。 安装git:从官网Git (git-scm.com)下载安装包 配置git: git config --global user.name "Your Name" git config --global user.e…