Сообщение от MoKa
Ну по сути можно было бы и реализовать абстракцию деструкторов для всех платформ, что решило бы проблему, как предложил SBJoker.
|
Так как не все языки поддерживают деструкторы, то единственный выход который я вижу - на уровне транслятора, во время транслирования, добавлять вызов деструктора перед = Null. Например есть следующий код,
После трансляции получаем:
If (a <> Null) a.Destroy()
a = Null
Но это далеко не самый оптимальный подход. Чтобы избежать лишних вызовов по мне лучше самому контролировать этот процесс (в данном случае). Можно написать свой деструктор, просто не забывать его вызывать, вот и все.