Có cách nào để tôi có thể khai báo một biến với địa chỉ tuyệt đối có một số thay đổi cho biến mà nó đề cập đến không. Ví dụ, thay vì:Cú pháp cho biến cục bộ tuyệt đối đối với biến số khác với một số bù đắp
function RefCount(const s: string): Integer;
begin
Result := PInteger(Integer(s) - 8)^;
end;
là có một cách nào đó mà tôi có thể làm:
function RefCount(const s: string): Integer;
var
Count: PInteger absolute s {- 8 ?} ;
begin
Result := Count^;
end;
(Ví dụ là để minh họa mà thôi, nó không nhất thiết phải là hữu ích ..)
Tôi đã hỏi cùng một câu hỏi về WP: RD/C cách đây vài năm và câu trả lời tôi nhận được là 'không'. Và, theo như tôi biết, điều đó thực sự * là * câu trả lời. –
(Bằng cách này, bạn biết rằng đoạn mã đầu tiên của bạn thực sự ngắn hơn đoạn cuối cùng của bạn, phải không? :) –
Những gì bạn về cơ bản yêu cầu là equivilent của từ khóa '__based' của VC++. Không có tính năng như vậy trong Delphi (hoặc C++ Builder, cho rằng vấn đề). –