Delphi 7有没有宏预处理器?
没有内置的预处理器,所以也许可以使用第三方或其他语言的预处理器(比如c预处理器)。
如果有的话,如何在Delphi7中设置它?
我正在试着做函数内联(为了速度)。对于delphi来说,宏预处理器似乎是唯一简单的选择。
谢谢你,伊贡
发布于 2009-12-13 18:05:45
在编译代码之前,您总是可以在代码上运行外部宏处理器,比如m4,甚至(shudder) cpp。然而,我不建议这样做--根据我的经验,内联的好处(这是你似乎想要做的)是相当小的,并且可以被代码大小增加导致的速度减慢所抵消。
发布于 2009-12-15 05:42:15
下面是我如何使用m4的
// uses lookup for counting bits
function PopCount(const Number: Cardinal): Byte;
begin
Result := WordBitCount[Number and $FFFF] + WordBitCount[Number shr 16];
end;
{ M4 macro
define(PopCount, (WordBitCount[$@ and $FFFF] + WordBitCount[$@ shr 16]))
}它仍然很容易编译,但可以用m4加速。
发布于 2009-12-13 19:58:36
您可以使用作为JEDI Code Library一部分的JEDI Pascal Preprocessor。
您可以从JCL的SourceForge project page获取当前的JCL发行版,也可以浏览JPP课程代码here。
https://stackoverflow.com/questions/1893989
复制相似问题