Почему Visual Studio 2005 разделяет строковые таблицы при сохранении / создании файлов .rc? - PullRequest
1 голос
/ 06 июня 2009

Независимо от того, загружаю ли я существующий файл .rc или создаю новый, у Visual Studio есть странная тенденция разбивать таблицы на три части. Я действительно не понял, есть ли образец для этого, хотя я заметил, что, кажется, есть тенденция начинать с идентификаторов, делимых на степени двух, где это возможно. Поскольку компилятору ресурсов на самом деле все равно, как они разбиты, кажется странным, что он сохраняет их таким образом. Кто-нибудь знает почему?

STRINGTABLE 
BEGIN
    1     "String"
    2     "String"
    3     "String"
    4     "String"
    5     "String"
    6     "String"
    7     "String"
END

STRINGTABLE
BEGIN
    8     "String"
END

Ответы [ 2 ]

2 голосов
/ 06 июня 2009

См. Раздел «Примечания» следующей статьи о STRINGTABLE на MSDN:

Примечания

RC выделяет 16 строк на раздел и использует значение идентификатора, чтобы определить, какой раздел должен содержать строку. Строки, идентификаторы которых отличаются только нижними 4 битами, размещаются в одном и том же разделе. Для получения дополнительной информации см. Q196774.

http://msdn.microsoft.com/en-us/library/aa381050(VS.85).aspx

0 голосов
/ 06 июня 2009

Я думаю, что есть два правила: в STRINGTABLE не может быть более 16 строк, и VS любит помещать последовательные идентификаторы в одну таблицу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...