Добавлен Артас Менетил
Делаю нечто вроде SuperCustomValue (при помощи Hashtable).
В общем, мне необходимо добавить разные новые параметры юнитам для использования в триггерах.
В качестве названия параметра у меня выступает строка - для удобства. Она конвертируется в integer для использования в Hashtable при помощи StringHash.
И вот я подумал? Насколько такое возможно, что для двух разных строк эта функция вернёт одно и то же значение? Тогда вся моя система самоуничтожится :(
В общем, мне необходимо добавить разные новые параметры юнитам для использования в триггерах.
В качестве названия параметра у меня выступает строка - для удобства. Она конвертируется в integer для использования в Hashtable при помощи StringHash.
И вот я подумал? Насколько такое возможно, что для двух разных строк эта функция вернёт одно и то же значение? Тогда вся моя система самоуничтожится :(
Не лучше ли использовать исключительно числовые ключи?
Принятый ответ
Не представляю при каких обстоятельствах ключи могут совпасть, кроме, собственно, введения одинаковых строк. В этой статье упоминается о строковых ключах. Лично я только строковые и использую и никакого дискомфорта не испытываю.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Я хочу узнать, насколько вероятны подобные неприятности в бытовых условиях?
Integer - число вполне себе не бесконечное.
Сейчас ещё приведу расчёты и всё норм будет)))