找回密码
 加入
搜索
查看: 3805|回复: 19

[AU3基础] 写代码,你要有趣还是易懂

  [复制链接]
发表于 2019-1-15 20:53:54 | 显示全部楼层 |阅读模式
本帖最后由 gz13802424 于 2019-1-16 21:30 编辑

快过年了,所有很有闲,每天都在翻自己的旧代码来折腾,发现件有趣的事

_GDIPlus_GraphicsDrawImageRect($hGraphic, $hImage2, ($RelativeX + Abs($RelativeX)) / 2, ($RelativeY + Abs($RelativeY)) / 2, @DesktopWidth, @DesktopHeight)

($RelativeX + Abs($RelativeX)) / 2 这样的表达方式是还是很奇怪

但是如果换成下面这样的代码

If $RelativeX < 0 Then $RelativeX = 0
If $RelativeY < 0 Then $RelativeY = 0


这样是不是就很清楚了,原来是等效:当$RelativeX 少于 0 时$RelativeX等于0

那么回过头来看($RelativeX + Abs($RelativeX)) / 2 ,$RelativeX + $RelativeX的绝对值,如果$RelativeX为正数,那么相加后就变成了$RelativeX的2倍 ,如果$RelativeX为负数,那么相加就变成了0,最后再除以2,也正好实现了上面那么条件判断同样功能

有时候重重复复的代码堆叠,偶尔来点新奇的代表方式,是不是会让人精神为之一振呢

昨天有位大神给我了一段代码例程,我又学到一种新的表达方法
($RelativeX < 0 ? 0, $RelativeX)

总结一下当$RelativeX 少于 0 ,$RelativeX等于0,我有三种表达方法
有趣: ($RelativeX + Abs($RelativeX)) / 2
简便: ($RelativeX < 0 ? 0: $RelativeX)
易懂: If $RelativeX < 0 Then $RelativeX = 0

那么路过看贴的你,你会选择那种风格呢

评分

参与人数 1金钱 +99 收起 理由
haijie1223 + 99 淡定

查看全部评分

发表于 2019-1-15 20:58:40 | 显示全部楼层
简便: ($RelativeX < 0? 0: $RelativeX)
发表于 2019-1-16 00:06:52 | 显示全部楼层
易懂: If $RelativeX < 0 Then $RelativeX = 0
以后看的时候,不必那么费脑筋
发表于 2019-1-16 08:47:13 | 显示全部楼层
($RelativeX < 0 ? 0, $RelativeX)这个能不能解释一下,没理解。
发表于 2019-1-16 09:00:46 | 显示全部楼层
简便: ($RelativeX < 0? 0: $RelativeX)应是这样的?
发表于 2019-1-16 13:52:54 | 显示全部楼层
本帖最后由 zch11230 于 2019-1-16 14:00 编辑

($RelativeX + Abs($RelativeX)) / 2 有是有趣,多运算了几次,效率要低一点吧 如果涉及大量的操作时。
If $RelativeX < 0 Then $RelativeX = 0 效率高些


($RelativeX < 0 ? 0, $RelativeX) 三目AU3不是不支持么;;;;;;;;;;刚刚测试三目支持了,效率还可以,貌似还最高呢。

发表于 2019-1-16 14:01:08 | 显示全部楼层
($RelativeX < 0 ? 0, $RelativeX) 三目AU3是:号,这个,号可以用吗?
发表于 2019-1-16 14:37:48 | 显示全部楼层
带问号这段我也没看明白
 楼主| 发表于 2019-1-16 21:31:37 | 显示全部楼层
redapple2008 发表于 2019-1-16 08:47
($RelativeX < 0 ? 0, $RelativeX)这个能不能解释一下,没理解。

笔误,正确的应该是
($RelativeX < 0 ? 0: $RelativeX)
(条件 ? 真 : 假)
 楼主| 发表于 2019-1-16 21:31:55 | 显示全部楼层
chishingchan 发表于 2019-1-16 14:37
带问号这段我也没看明白

笔误,正确的应该是
($RelativeX < 0 ? 0: $RelativeX)
(条件 ? 真 : 假)
 楼主| 发表于 2019-1-16 21:32:12 | 显示全部楼层
redapple2008 发表于 2019-1-16 14:01
($RelativeX < 0 ? 0, $RelativeX) 三目AU3是:号,这个,号可以用吗?

笔误,正确的应该是
($RelativeX < 0 ? 0: $RelativeX)
(条件 ? 真 : 假)
发表于 2019-1-17 13:36:35 | 显示全部楼层
学习了 慢慢熟悉先
发表于 2019-1-17 16:06:42 | 显示全部楼层
当然是易读了,否则过一段时间都看不懂
发表于 2019-1-18 14:12:34 | 显示全部楼层
发表于 2019-1-22 12:07:31 | 显示全部楼层
自己会那个就用哪个,以后可以看的懂的!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-4-26 21:08 , Processed in 0.082976 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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