相关推荐
-
DELPHI讲义
第一讲 delphi基础【例】改变窗体的标题,颜色,尺寸 delphi 程序设计特点:可视化,开发方便【例】写代码,改变标题,颜色,尺寸 对象成为处处用到的基本元素。对象含有属性和事件。delphi以pascal语法为基础。一、delphi是什么? Delphi 是borland 公司研发的面向对象的,可视化的,快速的应用开发工具。 ◇对象是对相对独立
-
[转贴]Delphi 的数据结构泛型类库指南,Delphi中的STL
终于给我找到了,DeCAL,Delphi中的STL,以后终于有Map用了。我选择,我喜欢!以下是转载:声 明一、 关于在Internet 网上转发本文件的声明任何个人或者机构可以在Internet 上自由的转发和引用本文。但转发过程中必须保证本文的完整性, 不得进行任何的修改。作者允许任何个人或者机构在本文的转发过程中附带其它的文件来描述、补充或者评价本文。但不得在本文的原文中修改。二、 关于
-
吐血整理 Delphi系列书籍 118本(全)
吐血整理 Delphi系列书籍 118本(全) Delphi 教程 系列书籍 网友(老帅)整理001_《Delhpi6数据库设计思想与实践》 002_《Delphi6应用开发指南》 003_《Delphi6开发人员指南》 004_《Delphi6数据库开发典型实例》 005_《Delphi6组件大全》 006_《深入Delphi6 网络编程》 007_《Delphi6数据库深入编程技术》 008_
-
DELPHI Winsock完成端口[转]
用DELPHI开发网络代码已经有一段时间了!我发现在网上用VC来实现完成端口(IOCP)的代码很多,但是使用DELPHI来实现的就比较少了。对IOCP讲的清楚的就更少了。在这里我把自己编写DELPHI下的IOCP写出来,希望对刚学完成端口的朋友有个帮助。首先我们来了解一些在使用IOCP的时候需要使用的一些结构!(1):单IO数据结构 LPVOID = Pointer; LPPER_IO_OPE...
-
Delphi流操作技巧
1、文件流 TStreamMemoery 读写内存 TMemoryStream的继承关系如下TObject|TStream|TCustomMemoryStream|TMemoryStream 如何使用TMemoryStream?其实TmemoryStream使用就跟TStream 一样具体的属性,方法可看帮助。下举一例:如我想在内存中直接读写一个Bitmap,怎么办?TmemoryStream帮
-
delphi文件解析
1,txt文件解析 //新使用的txt解析函数 procedure TFrmImportAfterHourFundMarket.TxtPrepareData; var F1:TextFile; sLine:string;//txt文件得到每一行数据 AStr: string;//每一行需要处理的数据 idx: Integer;//得到分隔符的下标 ASubS
-
delphi中的单元
Object Passal的程序结构很特殊,与其它语言如C++,Object Windows等结构都不同。一个Delphi程序由多个称为单元的源代码模块组成。使用单元可以把一个大型程序分成多个逻辑相关的模块,并用来创建在不同程序中使用的程序库。 8.1 Program单元 Program单元就是Delphi中的项目文件。 Program单元是一个特殊的单元,类似于C语言中的M
-
Delphi 类与对象内存结构浅析(上)
参考资料李战.《悟透delphi》,第1章“DELPHI的原子世界” “探索Delphi类与对象的内存结构”基本知识动态内存与静态内存当程序运行时,系统首先将所有数据装载入内存,完成初始化,然后从入口地址开始执行代码。程序装载后即存在于内存空间中的数据我们称之为静态内存,运行过程中分配的内存我们称之为动态内存。Delphi的类是由编译期间决定的,编译完成后即固定
-
delphi.数据结构.链表
链表作为一种基础的数据结构,用途甚广,估计大家都用过。链表有几种,常用的是:单链表及双链表,还有N链表,本文着重单/双链表,至于N链表。。。不经常用,没法说出一二三来。 在D里面,可能会用Contnrs.pas.TStack/TQueue相关类,进行操作,不过里面的实现,并非使用的是链表实现,只是用TList,然后。。。实现的。 呵,TList怎么实现那些不是重点,本文着重是说一下自己使用链表...
-
DELPHI中使用Tlist类的简单分析
我在上面的BLOG中写到了使用指针的方法。在DELPHI中指针最常见的就是和类TLIST结合起来使用。下面是一个很简单的例子,希望对这个例子的分析能让大家对使用TLIST类有一个简单的认识。 代码的功能是使用指针和Tlist来生成一个牌串,并将牌串保存在t_CardInfo中。 procedure TForm1.Button1Click(Sender: TObject);const /...
-
Delphi常用数据结构总结
Delphi常用数据结构总结 1、字符串数组 var days: array[1..7] of string; days[1] := '星期日'; days[2] := '星期一'; days[3] := '星期二'; days[4] := '星期三'; days[5] := '星期四'; days[6] := '星期五'; days[7] := '星期六'; ...
-
对象与类类型
对象与类类型 从用户角度考虑,用户并不需要了解面向对象编程,就可编写Delphi应用程序。当用户在建立新窗体,添加新构件以及处理事件时,大部分相关代码会由Delphi自动产生。但是,知道语言及其细节,对理解Delphi正在做什么并完全掌握它是很有帮助的。特别是有关类类型的概念及用法是学习后面构件编程及Delphi深入编程的基础。
-
Decal SDL-Delphi的范型类库-通用数据结构与算法类库(一)
1、Decal SDL 通用数据结构与算法类库我个人认为是目前类结构建模建得很好的一个数据结构类库。介绍Decal的前身是 SDL,一套商业的通用数据结构与算法类库。Decal删除了其中关于垃圾回收部分的代码,而将其他部分全部开放源代码了,这对大家来说是一个好消息。Decal的全称是 Delphi Container and Algorithm Library,也就是Delphi 数据容器和算
-
Delphi接口的底层实现
Delphi接口的底层实现引言 接口是面向对象程序语言中一个很重要的元素,它被描述为一组服务的集合,对于客户端来说,我们关心的只是提供的服务,而不必关心服务是如何实现的;对于服务端的类来说,如果它想实现某种服务,实现与该服务相关的接口即可,它也不必与使用服务的客户端进行过多的交互。这种良好的设计方式已经受到很广泛的应用。 早在Delphi 3的时候就引入了接口的概
-
悟透delphi 第十一章 面向对象数据库基础
第一章 DELPHI的原子世界第二章 DELPHI与WIN32时空第三章 多线程第四章 接口第五章 包第六章 事件与消息第七章 组织你的模块第八章 探索数据库第九章 多层体系结构第十章 操作界面与操作逻辑第十一章 面向对象数据库基础 本书原著李战(leadzen)大牛,由tingsking18整理,本人blog发布的版本经过战哥同意,转载请著名出处和原作者!第十一章
-
DELPHI内存详解(3)-DELPHI的内存实现
DELPHI是在Windows内存管理的基础上,通过GetMem.inc来实现自己的内存管理器,它封装了操作系统API,使得用户可以直接分配内存,而无须考虑内存具体在哪个虚地址空间。这样的好处就是对于开发者来说:内存分配是透明,分配到的任何一块(既定长度的)内存都是连续的,可以通
-
delphi 数据 上移 下移_数据结构之“堆(Heap)”
简介堆是一种特殊的完全二叉树。当堆中的所有的节点大于等于他的子节点,我们可以称这个堆为最大堆,相反,当堆中的所有的节点小于等于他的子节点,我们称这个堆为最小堆。JS中的堆Javascript通常用数组来表示堆堆的节点位置遵循以下规则:•左侧子节点的位置是当前节点索引*2+1,即2*index+1•右侧子节点的位置是当前节点索引*2+1,即2*index+...
-
Delphi笔记(整理)-变体
除结构类型和指针外,变体类型能存储其它的任何类型; 变体类型能存储接口,并能通过它使用接口的方法和属性(参考Object interfaces); 变体类型能存储动态数组,也能存储一种特殊的静态数组:变体数组(Variant array)。 变体类型能和其它变体类型、整数、实数、字符串和布尔值在表达式和赋值语句中混合使用,编译器自动完成类型转换。 可以通过自定义来扩展变体类型,从而能存储任意值。...
-
DELPHI内存详解(2)-堆和栈
栈是编译器自动分配释放,存放函数的参数值,局部变量的值,存取偏移是4字节,不会根据需要动态增长,超出范围会报异常;堆是由程序员分配释放,编译器都会默认建一个“堆”,建立“堆”时会同时提交真实内存,这在申请大内存时会很慢,所以默认“堆”也只有1M,但是“堆”没有限制大小,会根据需要
-
Diocp学习笔记 1、通讯传值(DELPHI 通讯框架)
一、传输 事例里的客户端与服务端是通过自定义的的数据结构进行传输(事例里带的 TSimpleMsgPack) 创建: CMDObject: TSimpleMsgPack; 添加值: 1》 CMDObject.Clear; CMDObject.ForcePathObject('cmdIndex').AsInteger := 5; 读取值: 1》 vReqUserID := AMs...