Сообщение от Vadimich
Всем привет. возникла следующая проблема
cube = xCreateCube()
xPositionEntity cube,-5,0,0
xFreeEntity cube
xPositionEntity cube,-10,0,0
a# = xEntityX(cube)
этот код не выдает ошибку и a получает координату -10 в итоге. более того, если удаленный объект подвергается каким-то модификациям, информация обновляется.. как будто он просто стал невидимым.
|
Это нормально, если бы деаллокатор физически заполнял очищенную область нулями или каким-то паттерном (что происходит в Debug-режиме), то все работало бы очень медленно. Просто не надо обращаться к удаленным объектам.
Сообщение от Vadimich
обнуление Cubу после xfreeentity тоже не дает нужного результата. объекты, обращающиеся к cube переходят к любому другому объекту и начинают брать информацию с него
это становится проблемой, когда этот entity передался какому-то объекту аргументом и уловки вроде "if entity=0" или "if xentityClass<>"Null"" не помогают. объект переходит к любому другому объекту на свой выбор.
помогите пожалуйста
|
Вот этого не понял. Пример, на котором можно воспроизвести, пожалуйста.