With new users purchasing Delphi every single day, it’s not uncommon for me to meet users that are new to the Object Pascal language. One such new user contacted me recently with questions about reading and writing structured data to files on disk.In…
Object Pascal 参考手册 (Ver 0.1)ezdelphi@hotmail.com OverviewOverview(概述)Using object pascal(使用 object pascal)Object Pascal 是一种高级编译语言,具有强类型(对数据类型的检查非常严格)特性,支持结构化和面向对象编程.它的优点包括代码的易读性.快速编译,以及支持多个单元文件从而实现模块化编程.Object Pascal 具有一些特性以支持 Borland 组件框架和 RAD(快速应用程…
 数据类型与定义变量 Object Pascal 语言的最大特点是对数据类型的要求非常严谨.传递给过程或函数的参数值必须与形参的类型一致.在Object Pascal 语言中不会看到像C 语言编译器提示的“可疑的指针转换”等警告信息.由于Object Pascal 语言对数据类型比较严谨,因此它会对代码进行严格检查,以确保不会出现错误.变量是程序代码中代表一个内存地址的标识符,那么该地址的内存内容就可以在程序代码执行时被改变.每个变量都有一个名字和数据类型,名字可以用来引用变量,数据类型决定变量…
Delphi APP 開發入門(六)Object Pascal 語法初探 分享: Share on facebookShare on twitterShare on google_plusone_share   閲讀次數:3442 發表時間:2014/06/10 tags: 行動開發 教學 App Delphi XE6 Android iOS Delphi APP 開發入門(五)GPS 定位功能 << 前情 經過前面五週幾乎每週可以寫出一個簡單App後,大家都可以感受到Delphi強大的開發威…
这点是与C语言不一样的地方,以前我一直都没有明白这一点,所以总是不明白:函数地址再取地址算怎么回事? ---------------------------------------------------------------------------------------------------------------- 在学习Delphi的时候,一个很好的建议是和C/C++去类比着学习,从指针,到内存管理,到数组,到面向对象……各个方面,都是有很多可以相似和或者也有不同的方,类比着学习,一…
Delphi 是以Object Pascal 语言为基础的可视化开发工具,所以要学好Delphi,首先要掌握的就是Object Pascal 语言.Object Pascal语言是Pascal之父在1985年于Apple Macintosh机器上实现的.后来Borland公司也在它的Pascal产品Turbol Pascal/Delphi中实现了Object Pascal.   注:该系列内容整理自以下链接. http://chanlei001.blog.163.com/blog/static/…
过程与函数 过程与函数是实现一定功能的语句块,是程序中的特定功能单元.可以在程序的其他地方被调用,也可以进行递归调用.过程与函数的区别在于过程没有返回值,而函数有返回值. 1.过程与函数的定义 过程与函数的定义包括过程原型或函数原型.过程体或函数体的定义.过程定义的形式如下: procedure ProcedureName(ParameterList); directives; var LocalDeclarations; begin statements end; ProcedureName…
      Object Pascal 的运算符 运算符是程序代码中对各种类型的数据进行计算的符号,通常分为算数运算符.逻辑运算符.比较运算符和按位运算符. 1.算术运算符Object Pascal 语言的算术运算符,如表1-9 所示.表1-9 Object Pascal 语言算术运算符 操作符 操作 操作数据类型 结果类型 + 加 整型.实型 整型.实型 - 减 整型.实型 整型.实型 * 乘 整型.实型 整型.实型 / 除 整型.实型 整型.实型 mod 取余 整型 整型 div 整除 整型…
http://www.cnblogs.com/spider518/archive/2010/12/30/1921298.html 3 结构化异常处理 结构化异常处理(SHE)是一种处理错误的手段,使得应用程序能够从致命的错误中很好地恢复. 异常的来源 在Delphi的应用程序中,下列的情况都比较有可能产生异常. (1)文件处理 (2)内存分配 (3)Windows资源 (4)运行时创建对象和窗体 (5)硬件和操作系统冲突 在早期的Delphi 中,异常是由Object Pascal 语言来处理的…
2 面向对象的特性 在软件系统开发过程中,结构分析技术和结构设计技术具有很多优点,但同时也存在着许多难以克服的缺点.因为结构分析技术和结构设计技术是围绕着实现处理功能来构造系统的,而在系统维护和软件升级的过程中,用户的需求变化往往是针对于系统功能的,所以采用这种技术设计的系统是不稳定的,其可修改性和可重用性是不完善的.在这种情况下,面向对象的程序设计技术产生了,它尽可能地模拟人类习惯的思维方式,使开发软件的方法和过程尽可能地接近人类认识世界.解决问题的方法与过程.采用面向对象的程序分析与设计技术…
http://www.delphi2007.net/delphiblog/html/delphi_2004511950333715.html 前言 近期,一直在使用 C++ 与 Object Pascal (后面简称 OP)深入学习面向对象编程(Object-Oriented Programming 后面简称 OOP). 说到 OOP ,其实我早在四年前就已经开始接触这个概念了,用 Delphi 作为开发平台,语言是 OP, 因为当时是我学习编程的初级阶段,感觉 Delphi 学习起来比较容易,…
The project was not built since its build path is incomplete. Cannot find the class file for java.lang.Object (2007-08-29 10:13:56) 转载▼ 错误提示:The project was not built since its build path is incomplete. Cannot find the class file for java.lang.Object…
用了这些年的Delphi,竟然对Currency及TBCDField一知半解,下文给了很好的讲解,值得一读. 一.       BCD类型 BCD即Binary-Coded Decimal?,在Delphi中,BCD字段类型可以精确保存浮点数据类型. Delphi支持的BCD码的数据类型名为TBCD,它的定义如下: TBcd  = packed record Precision: Byte;                        { 1..64 } SignSpecialPlaces:…
delphi语言在传统的Records类型的基础上增加了许多像类一样的高级功能,如:Records可以有属性和方法(包括构造constructors),类属性,类方法,类静态字段和内嵌类型.下面这个示例演示定义一个功能像类一样的Records: typeTMyRecord = recordtypeTInnerColorType = Integer;varRed: Integer;class varBlue: Integer;procedure printRed();constructor Cre…
Java SE 16 record 类型说明与使用 作者:Grey 原文地址: 博客园:Java SE 16 record 类型说明与使用 CSDN:Java SE 16 record 类型说明与使用 说明 record 是 Java SE 16 的新特性 record 的使用场景 假设我们想创建一个不可变的类 Point,它有 x 和 y 的坐标.我们想实例化Point对象,读取它们的字段,并将它们存储在 List 中或在 Map 中作为键值使用. 我们可以这样实现 Point 类 publi…
Object转int int count=(int)map.get("count") int count=Integer.parseInt((String)map.get("count")); int  count=Integer.parseInt(map.get("count").toString()); 自动数据类型转换 自动转换按从低到高的顺序转换.不同类型数据间的优先关系如下:    低--------------------------…
Object类型转换成自定义类型 场景: 从数据库或者别的途径接收对象的时候用Object,但是用的时候怎么object点(方法提示 | alt+'/'),都点不出自定义类型的方法. 比如,数据库查询Customer的时候,用Object来接收,那么想要调用Customer中的getCust_Id()方法,你会发现用Object怎么都点不出来.我之前头疼了很多次,今天做小demo,又碰巧用object接收,运气好的是这次我貌似琢磨出怎么转型了. 1.转型前(查询出来每条数据由一个Customer…
先定义一个 package , package中含有一个 record 类型的变量 create or replace package pkg_record is type emp_record is record( ename emp.ename%type, eno emp.empno%type ); end pkg_record; 定义一个存储过程 create or replace procedure pro_add_emp(v_emp_rcd in out pkg_record.emp_…
如果需要定义二维数组可以采取以下定义形式: 一.静态数组定义 静态数组定义,通常用于数组元素的数目确定的情况.定义形式如下: 示例: 1 2 3 4 5 6 7 8 9 10 11 type   //定义二维数组类型   TMultiArr = array[1..3,1..3] of string;  var   MultiArr: TMultiArr;         //定义 行12*列12 的 Integer 数组    IntArr: array[1..12] of array[1..1…
4 方法与技巧 4.1 设置代码模板 代码模板是Delphi 的代码感知特性的一种,通过它可以快速.高效和正确地输入代码.代码模板将一些常用的语句块保存在模板中,然后程序员只要在代码编辑器中按下“Ctrl+J”组合键,则会弹出一个小窗口,其中对已有的语句块进行列表显示.可以选择其中的一个并按下回车键,则该模块语句就完整地出现在当前光标所在的位置.例如在需要循环语句的地方,可以选中代码模板列表窗口中的“for statement”,当前光标所在位置就会出现下面的代码: for := to do b…
控制语句 1.常量声明语句常量在声明时就被赋予了一个值,在程序执行过程中是不可改变的. 格式 const 常量名 :数据类型 = 值 下面的例子声明了3 个常量: const Pi = 3.14159; BookID = ; BookName = "Delphi"; 像变量一样,常量也有类型.上文的3 个常量的类型分别是Real 型.整型.字符串型.常量用“=”表示两边的值是相等的. 为常量指定数据类型,声明方法如下: const UserID :Integer =; UserName…
下面的计划: 评估用Delphi XE4来开发游戏的可行性. 以及成本. (代价过大的话 估计还是不会被接受 所以某个角度来说这是个玩具) . 有几个选择, Asphyre 4.0 之后作者lifepower 宣布不继续了,因为时间. 当孩子爸了. 虽然支持者都觉得可惜, 但反过来看,如果不能支持他生活的话, 他继续做义工的可能性到底有多大呢? 很正常.  看来有娃是程序员的一个人生转折点. Hge  Pascal 版本 移植. 或者Wrapper Cocos2d / Sparrow  ? 有几…
Delphi自从增强了RTTI后,语言的可灵活性多大增强,Delphi的dbExpress中提供了DBXJSON,和DBXJSONReflect两个单元,可提供JSON序列化 下面的例子是实现Delphi实体对象转换为JSON字符串,以及JSON字符串转换为Delphi 实体对象的示例:(在Delphi XE3测试通过) unit Unit2; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Vari…
ref:Linux / Unix Command: ls NAME ls - list directory contents SYNOPSIS ls [OPTION]... [FILE]... DESCRIPTION List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuSUX nor --sort. Mandatory ar…
echo.@.call.pause.rem(小技巧:用::代替rem)是批处理文件最常用的几个命令 echo 表示显示此命令后的字符  echo off 表示在此语句后所有运行的命令都不显示命令行本身  @与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行).  call 调用另一个批处理文件(如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令).  pause 运行此句会暂停批处理的执…
原文:http://www.cnblogs.com/mmzs/p/7662863.html 错误类型: 搞了很久才找到原因.解决办法写出来分享: 出现以上错误的原因是玩耍maven时多装了个jre.本来Eclipse在建立项目时,会自动参照你的jre路径,但多个版本就没办法加载了. Java学习交流QQ群:603654340 我们一起学Java! 解决办法: 进入window \ preferences \ java \ Installed JREs…
Car c= new Car(log); c.print() class Car{ def log public Car(log){ this.log=log } public void print(){ log.info "hello world" } }…
#1. 打开文件,得到文件句柄并赋值给一个变量 #2. 通过句柄对文件进行操作 #3. 关闭文件 #1.open函数打开文件,open找的是系统的编码gbkf = open("陈粒",encoding="utf-8") #打开文件指定编码data = f.read() #读的模式print(data)f.close() #关闭文件f = open("xxx")data = f.read()print(data)f.close()#2.r是读的方式…
在COM组件的使用和开发过程中经常需要获取有关组件的信息.而COM组件以二进制代码的形式发布,如果不借助特定的工具这些相关信息将难以被获取.通过访问类型库就可以查看COM组件的信息. 一.类型库的基础知识介绍: 1.类型库的定义: 类型库:在类型库中以二进制的形式描述了一个或多个对象的类型信息.具体的类型信息包括:组件的CLSID.所支持接口的IID.接口的成员函数及其参数和返回值类型等. TTypedComObject类: TTypedComObject类及其派生类提供了对类型库的支持.COM…