Delphi XE2:Rect歧义?

时间:2013-05-29 23:43:41

标签: delphi delphi-xe2 rect

Rect 函数以两个单位声明:

System.Classes.Rect
System.Types.Rect

为什么这种含糊不清?是否弃用了其中一个功能?应该首选哪一个?

2 个答案:

答案 0 :(得分:3)

从文档中,System.Types.Rect获取矩形四个角的整数值;另一方面,System.Classes.Rect也提供了一个重载,需要两个TPoint s - 一个用于左上角,一个用于右下角。两者都返回TRect,所以这是您使用的选择问题。

后者更灵活(提供两个重载)所以最好确保在使用子句{(1}}之后包含Classes(如果同时使用两者)不隐藏提供的更通用的方法Types

答案 1 :(得分:3)

如果您要在紧密循环中调用Rect(不执行I / O或类似操作),请考虑调用types.Rect,这是classes.Rect真正做的事情;它调用types.Rect(但是你可能需要内联自己的Rect ...)。否则无关紧要,我不打算在'使用'中包含“类型”只是为了保存一个间接级别。