![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
вот примерно:
допиливайте ![]() |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
нельзя ли прокомментировать, откуда взялось 130 ?! ![]() Добавлено через 1 минуту и 13 секунд а кто такой "баян" в данном контексте ? |
|||
|
||||
boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
не уверен, но полагаю, что это из-за нулевого символа добавляемого в конец хешируемой строки, и того = 129. или что? вот. ну чем не баян? ;) |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
все дошло.. я "баян" забыл посчитать.. ![]() Добавлено через 1 минуту и 7 секунд а пример тремя постами выше с шаблонной рекурсией подошел ? или еще не пробовали ? |
|||
|
||||
boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
завтра буду пробовать. сегодня повод, как ни как ![]() Добавлено через 11 минут и 55 секунд вот. проверил. ничего не пришлось допиливать ![]()
|
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
кстати да, FNV1-a не лучший хеш для этой задачи, надо бы поискать что получше
|
|||
|
||||
boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
гугл меня вчера завел на какой-то сайт, и там была куча его разновидностей, и букв. потому не осилил ![]() Добавлено через 5 минут и 58 секунд тему переименовал. не теряйтесь ![]() |
|||
|
||||
Abyx |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 601 Регистрация: 3.11.2009 Репутация: 1 Всего: 10 |
нда.. похоже что кроме как генерацией кучи шаблонов, циклов для constexpr не получить.
насчет хеширования строк: http://bretm.home.comcast.net/~bretm/hash/7.html - если верить этой статье, Bob Jenkins' hash достаточно хорош для строк (а crc32 очень плох) надо будет попробовать реализовать его для constexpr. код: http://burtleburtle.net/bob/c/lookup3.c |
|||
|
||||
Abyx |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 601 Регистрация: 3.11.2009 Репутация: 1 Всего: 10 |
также надо бы подумать о надежном применении хешей для switch
как минимум надо чтобы небыло коллизий между хешами меток в одном switch'e можно также потребовать чтобы коллизий не было во всей единице трансляции, это слишком строгое требование, но возможно его проще реализовать |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
ну switch, насколько я знаю, просто напросто не нужен.. а для проверки коллизий, можно использовать карту соответствий, которая так и так составляется.. исхожу из ранее приведенных boostcoder`ом данных. ![]() |
|||
|
||||
boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
||||
|
||||
Abyx |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 601 Регистрация: 3.11.2009 Репутация: 1 Всего: 10 |
хм.. действительно
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |