摘要: Delphi强力优化 nightmare(qingrui li)**关于记录类型的返回值C++程序员不会这样做,因为返回值会被压入堆栈,导致时间效率和空间效率都降低。但Delphi无此问题。一般情况下,记录类型返回值会像Out参数一样传递引用(在EAX寄存器中)。**公共表达式Delphi只在一个语句行内提取公共表达式。如果公共表达式包含函数调用,则不会被提取,因为可能改变语义。如果确保函数返回值相同,应预先计算。**类属性每次引用属性时都会使属性重新计算,即使属性是直接映射到域。频繁调用属性时应预先计算。**循环内的重复计算表达式外提C++程序员可能会让编译器做此优化,但Delphi一般不会 阅读全文
posted @ 2011-02-18 17:21 Enli 阅读(2078) 评论(0) 推荐(0) 编辑
摘要: Delphi的四舍五入函数一、四舍五入法 四舍五入是一种应用非常广泛的近似计算方法,其有算术舍入法和银行家舍入法两种。 所谓算术舍入法,就是我们通常意义上的四舍五入法。其规则是:当舍去位的数值大于等于5时,在舍去该位的同时向前位进一;当舍去位的数值小于5时,则直接舍去该位。 所谓银行家舍入法,其实质是一种四舍六入五留双(又称四舍六入五奇偶)法。其规则是:当舍去位的数值小于5时,直接舍去该位;当舍去位的数值大于等于6时,在舍去该位的同时向前位进一;当舍去位的数值等于5时,如果前位数值为奇,则在舍去该位的同时向前位进一,如果前位数值为偶,则直接舍去该位。 综上所述,两种舍入法所得结果不尽一致,因此 阅读全文
posted @ 2011-02-18 17:02 Enli 阅读(415) 评论(0) 推荐(0) 编辑