Cześć, nie za bardzo wiem, jak nazwać ten temat.
Nie mogę sobie z tym poradzić, więc pytam się mędrców.
Mam funkcję:
function mojaFunkcja(param: integer): boolean;
Ona MUSI tak wyglądać i nie można tego zmienić.
Teraz chciałbym, aby ta funkcja przekazała coś do procedury, która ją wywołuje. Jedyna możliwość to przez dodatkową zmienną, ale chciałbym tego uniknąć. Chciałbym, aby procedura, która wywołuje tą funkcje przekazała w parametrze adres pamięci, do którego ma być zapisana ta wartość. Czy jest to możliwe?
Próbowałem coś takiego:
function mojaFunkcja(param: integer): boolean;
var
i: integer;
begin
i:=10;
param^:=i;
end;
procedure proc;
var
res: integer;
begin
mojaFunkcja(Integer(@res));
showMessage(intToStr(res));
end;
To się oczywiście nie kompiluje. Nie wiem, czy w dobrą stronę myślę, czy to w ogóle możliwe, tak więc proszę o jakąś odpowiedź.