動的に割り当てられたアドレス空間へのポインターがスタックを離れるとすぐに、メモリを自動的に解放するのに役立つ何かをプログラムしたいと思います。例は次のとおりです。
procedure FillMemory (var mypointer);
begin
// CopyMemory, Move, etc... with data
end;
procedure MyProcedure;
var
MyPointer : Pointer;
begin
MyPointer := VirtualAlloc (NIL, 1024, MEM_COMMIT or MEM_RESERVE, PAGE_EXECUTE_READWRITE);
FillMemory (MyPointer);
VirtualFree(MyPointer, 0, MEM_RELEASE); // I would like to avoid this...
end;
文字列を使用することもできますが、それらを避けたいと思います (とにかくスタック内の文字列が解放されるかどうかはわかりません...) アイデアはありますか?