写代码,你要有趣还是易懂
本帖最后由 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
那么路过看贴的你,你会选择那种风格呢
简便: ($RelativeX < 0? 0: $RelativeX) 易懂: If $RelativeX < 0 Then $RelativeX = 0
以后看的时候,不必那么费脑筋 ($RelativeX < 0 ? 0, $RelativeX)这个能不能解释一下,没理解。 简便: ($RelativeX < 0? 0: $RelativeX)应是这样的? 本帖最后由 zch11230 于 2019-1-16 14:00 编辑
($RelativeX + Abs($RelativeX)) / 2 有是有趣,多运算了几次,效率要低一点吧 如果涉及大量的操作时。
If $RelativeX < 0 Then $RelativeX = 0 效率高些
($RelativeX < 0 ? 0, $RelativeX) 三目AU3不是不支持么;;;;;;;;;;刚刚测试三目支持了,效率还可以,貌似还最高呢。
($RelativeX < 0 ? 0, $RelativeX) 三目AU3是:号,这个,号可以用吗? 带问号这段我也没看明白 redapple2008 发表于 2019-1-16 08:47
($RelativeX < 0 ? 0, $RelativeX)这个能不能解释一下,没理解。
笔误,正确的应该是
($RelativeX < 0 ? 0: $RelativeX)
(条件 ? 真 : 假) chishingchan 发表于 2019-1-16 14:37
带问号这段我也没看明白
笔误,正确的应该是
($RelativeX < 0 ? 0: $RelativeX)
(条件 ? 真 : 假) redapple2008 发表于 2019-1-16 14:01
($RelativeX < 0 ? 0, $RelativeX) 三目AU3是:号,这个,号可以用吗?
笔误,正确的应该是
($RelativeX < 0 ? 0: $RelativeX)
(条件 ? 真 : 假) 学习了 慢慢熟悉先 当然是易读了,否则过一段时间都看不懂 http://www.jianyiit.com/post-23.html
发好久的了
自己会那个就用哪个,以后可以看的懂的!
页:
[1]
2