Demo program for X-object create, use and free technology Just run SmartFree.exe. Don't require any installation
Программа предназначена для демонстрации техники рааботы с объектами, гарантирующей обнилление всех ссылок на объект в случае освобождения любой из них.
В демонстрационном примере создаются три объекта xIntObj, xStrObj и xObjX. Первые два содержат, соответственно, целое и строковое поле, а xObjX – два поля первых двух типов. Все эти классы умеют вывести значения своих полей в TStrings .
Кнопкой Create создаются все три объекта. При этом xIntObj получит значение из поля Int (в данном случае 15), а xStrObj из поля Str (test), а xObjX — значения первых двух.
Кнопкой Print можно вывести на Memo содержание всех трех объектов, а кнопкой PrintObjX только xObjX, который содержит «дополнительные» ссылки на xIntObj и xStrObj.
Остальные имеют достаточно говорящие названия.
При тестировании надо сначала создать кнопкой Create объекты, потом проверить их содержимое кнопкой Print. Потом освободить FreeIntObj и/или FreeStrObj. Теперь при нажатии на PrintObjX вы получите ошибку, хотя его поля это дублированные ссылки, которые никто явно не освобождал.