zoukankan      html  css  js  c++  java
  • delphi 查看编译版本

    对照表:

    http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Compiler_Versions

    procedure TForm1.Button1Click(Sender: TObject);

    begin
      ShowMessage(System.CompilerVersion.ToString());
    end;
     

    当软件在多个DELPHI版本下编译时,需要处理各版本的不同情况,使用编译条件技术实现。

    万一博客,编译指令基础使用介绍:http://www.cnblogs.com/del/category/168694.html

    Delphi的版本区分:

    RTL的版本: Run-Time Library 运行时库, 包括 System, SysUtils, Math 三个单元. 提供函数与语言, 编译器,

      操作系统及进程有关。 在System单元有常量定义:

      const 
        RTLVersion = 22.00;   //XE

    编译器的版本:查看方法,在命令行中,切换到对应delphi安装目录中的bin目录,执行dcc32.exe, 如XE:

    image

    可以看到 Embarcadero Delphi for Win32 compiler version 22.0 。

    System单元:{$EXTERNALSYM CompilerVersion}

    inc文件:

    .inc 文件就是include file的意思。在单元文件中可以用指令{$I 'xxx.inc'} 进行导入。.inc文件中可以写符合delphi语法的

    代码。另外: 引入 C 语言的 obj 文件是用 {$L 路径} 指令完成的。

    常用编译指令说明:

    指令 可选值 范围 注释
    {$MESSAGE HINT|WARN|ERROR|FATAL 'msg'}   Local  
    {$LEGACYIFEND ON}     IFEND就统一成ENDIF了,编译器会有警告,打开就可以和早期的版本兼容
    {$HPPEMIT 'string'}     添加的字符在C++编译时使用
    {$M +} /{$M-}   Local 与{$TYPEINFO ON} 作用是一样,指定为类生成与RTTI(Runtime Type Information)相关信息
    {$EXTERNALSYM [ 'typeNameInHpp' [ 'typeNameInHppUnion' ]]}     数据类型映射,产生C++头文件,一般跟$OBJTYPENAME一起。
    {$B-} +   完整的布尔表达式计算(禁止快捷计算)
    {$R-} +   范围检查(数组,字符串等)
    {$T-}     Typed @ operator
    {$X+}     Extended syntax
    {$P+}     Open string params
    {$J+}     Writeable structured consts
    {$H+}     Use long strings by default
    {$Q-}     Overflow checking

    预定义条件标识符:http://docwiki.embarcadero.com/RADStudio/Seattle/en/Conditional_compilation_(Delphi)

    编译器版本:http://docwiki.embarcadero.com/RADStudio/Seattle/en/Compiler_Versions

    编译符:http://docwiki.embarcadero.com/RADStudio/Seattle/en/Delphi_Compiler_Directives_(List)_Index

  • 相关阅读:
    第一轮 J
    第一轮 M
    第一轮 L
    第一轮 K
    第一轮 I
    第一轮 H
    第一轮 F
    第一轮 E
    第一轮 C
    12杭州online E 模拟
  • 原文地址:https://www.cnblogs.com/h2zZhou/p/9400288.html
Copyright © 2011-2022 走看看