0
知道ptr <> *null,
是那兩個代碼在功能上是相同的嗎?dealloc +%alloc()vs%realloc() - RPGLE
dealloc(en) ptr;
ptr = %alloc(500);
和
ptr = %realloc(ptr:500);
知道ptr <> *null,
是那兩個代碼在功能上是相同的嗎?dealloc +%alloc()vs%realloc() - RPGLE
dealloc(en) ptr;
ptr = %alloc(500);
和
ptr = %realloc(ptr:500);
號
%realloc()的保存存儲的當前值由ptr指向。
因此,如果沒有足夠的空間來放大現有的空間,因此返回相同的值ptr。系統會將原始空間中的字節複製到新空間。
從手冊:
%REALLOC (Reallocate Storage)
堆存儲指向返回的指針具有與堆存儲ptr指向爲相同的值。如果新的長度比舊的長度更長,則額外的存儲空間未初始化。
請確保在QRPLOBJ中查找未正確釋放的空間。 – danny117