2Pascal-新时代的Pascal

 找回密码
 立即注册
搜索
热搜: fastreport
查看: 1303|回复: 7
打印 上一主题 下一主题

跨平台,多设备,多平台,代码写法,预定义写法,讨论

[复制链接]

90

主题

293

帖子

8万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
82018
跳转到指定楼层
楼主
发表于 2015-6-15 15:46:10 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
京东购书支持本站
跨平台,多设备,多平台,代码写法,预定义写法,$IFDEF $IF defined 写法 ,讨论
给 WIN 系统写代码,不区分 32 64
{$IFDEF MSWINDOWS}
  //代码
{$ENDIF}

给 苹果 安卓 等 Linux 的 POSIX 标准系统写代码。
{$IFDEF POSIX}
  //代码
{$ENDIF}



给安卓系统写代码,不区分 32 64
{$IFDEF ANDROID}
  //代码
{$ENDIF}

给苹果系统写代码,不区分 PC 和移动,也不区分 32 64
{$IFDEF MACOS}
  //代码
{$ENDIF}

给苹果 PC  MAC 系统写代码,不区分 32 64
{$IF Defined(MACOS) and Not Defined(IOS)}

给 苹果 iOS 系统写代码,不区分 32 64
{$IFDEF IOS}
  //代码
{$ENDIF}

给 WIN 系统写代码,区分 32 64
{$IFDEF WIN32}
  //代码
{$ENDIF}

{$IFDEF WIN64}
  //代码
{$ENDIF}


使用
{$IFDEF XXXX} 或者 {$IFNDEF XXXX}
一般配合如下代码。
{$ELSE}
{$ENDIF}

如果想要 ELSEIF
如下写法
{$IF defined(XXXX)}
{$ELSEIF defined(YYYY)}
{$ELSEIF defined(ZZZZ) 可以配合 OR  AND}
{$ENDIF}










(C)(P)Flying Wang
回复

使用道具 举报

90

主题

293

帖子

8万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
82018
沙发
 楼主| 发表于 2015-6-15 16:51:33 | 显示全部楼层
京东数码购物支持本站
多谢 阿卍 来 捧场。
(C)(P)Flying Wang
回复 支持 反对

使用道具 举报

90

主题

293

帖子

8万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
82018
板凳
 楼主| 发表于 2015-7-9 10:57:22 | 显示全部楼层
京东数码购物支持本站
l_wming 发表于 2015-7-9 10:36
Delphi默认的这些define常量在什么位置?那个文件?

只能在帮助中看到。代码中没有定义,只有使用。
(C)(P)Flying Wang
回复 支持 反对

使用道具 举报

90

主题

293

帖子

8万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
82018
地板
 楼主| 发表于 2015-7-28 13:07:11 | 显示全部楼层
京东数码购物支持本站
多谢楼上的代码
FlyUtils.TBitmapHelper.pas
就可以 自动判断了。
{$IF DECLARED(FireMonkeyVersion)}
//FMX。
  {$DEFINE FMX}
{$ELSE}
//VCL
{$ENDIF}

(C)(P)Flying Wang
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|新时代Pascal论坛

GMT+8, 2024-5-18 13:46 , Processed in 0.055225 second(s), 23 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表