Как обнаружить «висячие указатели», если «Assigned ()» не может это сделать?

В другойвопросЯ узнал, чтоAssigned()&nbsp;функция идентичнаPointer <> nil, Я всегда понимал, чтоAssigned()&nbsp;обнаруживал эти висячие указатели, но теперь я узнал, что это не так. Dangling Pointers - это те, которые могли быть созданы в одной точке, но с тех пор были свободны и не были назначеныnil&nbsp;все же.

ЕслиAssigned()&nbsp;не может обнаружить висячие указатели, тогда что может? Я хотел бы проверить свой объект, чтобы убедиться, что он действительно является действительным созданным объектом, прежде чем пытаться работать с ним. Я не пользуюсьFreeAndNil&nbsp;как многие рекомендуют, потому что мне нравится быть прямым. Я просто используюSomeObject.Free.

Нарушения доступа - мой злейший враг - я делаю все возможное, чтобы не допустить их появления.