Delphi常量和引用

时间:2010-03-24 10:36:38

标签: delphi const pass-by-reference delphi-2007

我想在delphi中传递对函数的常量引用,所以我确信引用的对象不会改变并节省时间和内存。所以我想声明一个像

这样的函数
function foo(var const Value : Bar) : Boolean;

然而这是不允许的。我认为常量值会自动作为参考发送。但是我发现事实并非如此(在将函数发送到函数之前获取对象的地址给我$ 12F50C并且函数内同一对象的地址是$ 12F564)

如何发送常量参考?

1 个答案:

答案 0 :(得分:1)

Function Foo(Const Value:Bar):Boolean以“最有效”的方式传递值,对于大型对象,这通常是通过引用,但较小的对象倾向于通过值传递。

The answers to this question go into more detail...

请注意,传递标记为const的参数并不意味着它无法更改,只是意味着编译器不会让您直接更改它。