参数传递中的指针常量就不必说了吧——和非指针的常量一样的。
这是一个标准的Const Pointer的例子:
var
A:Integer=100;
const
PAInteger=@A;
procedure TForm1.Button1Click(Sender: TObject);
begin
Caption:=IntToHex(Integer(PA),8);
end;
下面是一个用函数来模拟无法预先决定值的常量指针的例子:
Unit A;
interface
function PointerAointer;
implementation
var
ObjA:TXXX;
//ObjA运行后才能被动态的创建
function PointerAointer;
begin
Result:=@ObjA;
end;
...
这样,在UnitA之外的地方,PointerA地返回值就是常量了