Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Используете уникальные идентификаторы для объектов?

02.11.24 00:53
Re: Используете уникальные идентификаторы для объектов?
 
alex445 патриот
в ответ AlexNek 01.11.24 23:25, Последний раз изменено 02.11.24 00:57 (alex445)

Вначале должно быть определение, какие два объекта будут считаться одинаковыми.
Вот сделал я клон моего объекта - это одинаковые объекты или разные?

Две ссылки на один и тот же объект - это одинаковый объект. Тут-то разногласий не будет? Железное определение.

if (myIsland == yourIsland) throw new Exception();


А вы любой класс начинаете с добавления ему какого-то уникального идентификатора?
Если класс "сидит" в базе, то скорее всего да. Но всегда есть исключения

Вы слишком далеко копаете, в базы какие-то лезете. Всё проще. У меня во вьюшном списке сидели представления, и по-ошибке могли создаться несколько вьюх на одну и ту же модель в одном и том же списке. А не должны были. Там при одной операции одна вьюха удалялась, а другая создавалась, так что внешне казалось, что нужный объект всё ещё в списке. А внутри списка я храню ссылку на удалённую из списка вьюху. Выбираю оставшуюся вьюху, которая видна в списке, сравниваю с сохранённой, и должен удалить, если они равны - а они не равны.

 

Перейти на