随笔分类 -  Delphi 编译指令

{$POINTERMATH ON} 方便指针操作的编译指令
摘要:编译指令 PointerMath 默认 off; 打开后, 可以像数组一样地读写指针中的系列数据, 非常方便!//测试整数指针procedure TForm1.Button1Click(Sender: TObject);var p: PInteger; i: Integer;begin{$POINTERMATH ON} //写入 p := GetMemory(SizeOf(Integer)... 阅读全文
posted @ 2009-12-07 17:51 万一 阅读(4515) 评论(0) 推荐(0) 编辑
如何在定义局部变量时赋初始值
摘要:局部变量不像全局变量可赋初始值, 但可以通过编译指令把指定类型的常量当作变量用, 如:const{$J+} num: Integer = 1;{$J-}begin Inc(num); ShowMessage(IntToStr(num)); {2}end;//或者写作:const{$WRITEABLECONST ON} num: Integer = 1;{$WRITEABLECONST OF... 阅读全文
posted @ 2009-11-09 18:12 万一 阅读(9436) 评论(3) 推荐(0) 编辑
Delphi 的编译指令(4): 编译指令全表(未完)
摘要:指令及默认值可选值范围注释举例 {$A8} {$ALIGN8}{$A+},{$A-}, {$A1},{$A2},{$A4},{$A8}; {$ALIGN ON},{$ALIGN OFF}, {$ALIGN 1},{$ALIGN 2}, {$ALIGN 4},{$ALIGN 8} Local {$APPTYPE GUI} {$APPTYPE GUI}, {$APPTYPE CONSOLE}... 阅读全文
posted @ 2008-12-19 13:29 万一 阅读(8340) 评论(7) 推荐(1) 编辑
Delphi 的编译指令(3): 常用的预定义条件标识符
摘要:找来找去没找到官方资料, 暂时把碰到过的列举出来吧, 以后慢慢补充. 版本标识: VER10 : Turbo Pascal 1 VER20 : Turbo Pascal 2 VER30 : Turbo Pascal 3 VER40 : Turbo Pascal 4 VER50 : Turbo Pascal 5 VER60 : Turbo Pascal 6 VER70 : Tur... 阅读全文
posted @ 2008-12-17 18:02 万一 阅读(5534) 评论(8) 推荐(0) 编辑
Delphi 的编译指令(2): 条件语句的更多用法
摘要:1. $IFDEF 等同于 $IF DEFINED(...) : 它们的结束分别是: $ENDIF、$IFEND; 例子中的 VER200 是 Delphi 2009 的标识. begin {$IFDEF VER200} ShowMessage('这是 Delphi 2009'); {$ENDIF} {$IF DEFINED(VER200)} ShowMessage... 阅读全文
posted @ 2008-12-17 15:31 万一 阅读(8153) 评论(2) 推荐(0) 编辑
Delphi 的编译指令(1): $DEFINE、$UNDEF、$IFDEF、$ELSE、$ENDIF
摘要:一个程序从无到有的过程是这样的: 编辑代码 -> 预处理 -> 编译(成dcu等) -> 链接(为exe等). 什么是预处理? 譬如 VCL 中有很多代码是兼容 Linux 的, 在 Windows 下就需要在编译之前预处理掉那些 for Linux 的代码. 1、判断操作系统: 其中的 "MSWINDOWS" 和 "LINUX" 就是 Delphi 预定义的 "条件标识符". begi... 阅读全文
posted @ 2008-12-17 13:58 万一 阅读(15935) 评论(1) 推荐(1) 编辑
使用 {$INCLUDE} 或 {$I} 指令管理和调用自定义函数
摘要:这是一个简单、方便而又实用的小技巧. 譬如这段代码中有四个定义函数: MyAdd、MyDec、MyMul、MyDiv我们可以把其中的自定义函数(也可以是其他代码)剪切保存在一个文本文件中(譬如是: C:\DelphiFun\MyFun.inc); 然后在原来代码的位置用 {$INCLUDE C:\DelphiFun\MyFun.inc} 或 {$I C:\DelphiFun\MyFun.inc} ... 阅读全文
posted @ 2008-06-06 12:42 万一 阅读(6775) 评论(5) 推荐(0) 编辑