网上文摘 小说 Flash游戏 最近更新 下载排行 资源分类 下载指南
经典编程资源 精彩不容错过
设为首页
加入收藏
联系我们
当前位置:Delphi园地技巧文章编程心得 → Delphi2007之改变
Delphi2007之改变
日期:2007年11月7日 作者:killghost 人气: 查看:[大字体 中字体 小字体]
在2006InRange是这样写的。
代码 (双击代码复制到粘贴板)
  function InRange(const AValue, AMin, AMax: Integer): Boolean;
  begin
    Result := (AValue >= AMin) and (AValue <= AMax);
  end;

在2007中却写成了这样
代码 (双击代码复制到粘贴板)
  function InRange(const AValue, AMin, AMax: Integer): Boolean;
  var
    A, B: Boolean;
  begin
    A := (AValue >= AMin);
    B := (AValue <= AMax);
    Result := B and A;
  end;

要按照自己现在的写法,肯定也会写成第一种。难道以后写程序都要按照第2种来了?各人自己取舍吧。呵呵。

下面是2种写法的反汇编结果



写法1
0044E3A4 3BD0 cmp edx, eax
0044E3A6 7F04 jnle 0044E3AC
0044E3A8 3BC8 cmp ecx, eax
0044E3AA 7D03 jnl 0044E3AF
0044E3AC 33C0 xor eax, eax
0044E3AE C3 ret
0044E3AF B001 mov al, $01
0044E3B1 C3 ret

写法2
0044E3CC 3BD0 cmp edx, eax
0044E3CE 0F9EC2 setle dl
0044E3D1 3BC8 cmp ecx, eax
0044E3D3 0F9DC0 setnl al
0044E3D6 22C2 and al, dl
0044E3D8 C3 ret


对不住大家。这个是我自己试验的时候做的。没有搬原文。所以贴反了。
 

(出处:https://dream4ever.org/showthread.php?t=155652)

相关文章:
·Delphi2007 越来越近了!
·Delphi2007 先睹为快!
·Review: Delphi2007 for Win32 (Beta) (翻译)
·Delphi2007 for Win32新特性视频演示!
·Delphi2007 for Win32试用版可以下载了
·Delphi2007 for Win32一些技术亮点
 → 特别推荐
 → 热点TOP10
关于我们 | 广告服务 | 发布资源 | 联系站长 Copyright © 2002-2006 Delphi园地 All Rights Reserved