Здравствуйте, Аноним, Вы писали:
А>итак..
А>возможно ли следующее:
А>const int hash = TRATATA("GiYO!");
А>т.е. получить во время компиляции хэш строки?
А>спасибо.
гм, тут не понятно, что такое очередной Аноним подразумевает под словом "хэш".
Здравствуйте, <Аноним>, Вы писали:
А>возможно ли следующее:
А>const int hash = TRATATA("GiYO!");
А>т.е. получить во время компиляции хэш строки?
Возможно, если реализовать свой препроцессор.
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Здравствуйте, Аноним, Вы писали:
А>итак..
А>возможно ли следующее:
А>const int hash = TRATATA("GiYO!");
А>т.е. получить во время компиляции хэш строки?
А>спасибо.
Можно получить хеш если передавать по символьно : hash_string<'a', 'b', 'c', 'd'>::value.
Если строку передать как последовательность символов то нет проблем
On Fri, 07 Oct 2005 19:50:55 +0400, wrote:
> возможно ли следующее: > > const int hash = TRATATA("GiYO!"); > > т.е. получить во время компиляции хэш строки?
Можно, но только до препроцессинга и компиляции.
Как тебе сказали, используй для генерации (файла) хэшей отдельный скрипт.
Здравствуйте, Cyberax, Вы писали:
C> wrote:
>> итак.. >> возможно ли следующее: >> const int hash = TRATATA("GiYO!"); >> т.е. получить во время компиляции хэш строки?
C>Нет, так как к строкам в compile-time обращаться нельзя.
ЗЫ Вроде как студия 7.1 компилит и без экстерна, но в моей памяти живо, что-то про указатели на объекты виз экстернал линкэйдж, хотя, возможно, это я помню из старого стандарта