У меня проблема с компиляцией моего кода в Delphi 2006. Я использую статический массив String:
fsi_names : array [0..FSI_NUM_VARS-1] of string;
В процедуре, которую я вызываю в начале программы, я присваиваю значения этому массиву. Этот код автоматически создается сценарием, который я написал. Он состоит из строк, похожих на следующий:
fsi_names[idFSI_FLIGHT_PATH_ANGLE] := 'FSI_FLIGHT_PATH_ANGLE';
Всего в этом массиве должно быть назначено около 2000 элементов. Я не мог найти магическое число, где умирает компилятор, но он работает с 1853, а не с 2109.
Дело в том, что мне нужен этот массив для преобразования идентификатора (который является индексом для массива) в имя в виде строки для различных приложений.
Я знаю, что если бы я разбил список назначений и разделил части на разные процедуры, то это сработало. Но поскольку код генерируется автоматически и часто меняется, этот метод не совсем удобен.
Я также думал о том, чтобы поместить содержимое в файл и прочитать его во время выполнения, но я бы предпочел свести к минимуму количество файлов, которые я должен отправить. Кроме того, я хотел бы защитить содержимое от обычного пользователя, чтобы он не связывался с ним.
У вас есть идея, как я мог бы либо преодолеть ограничения компилятора, либо изменить свой код для достижения моей цели?
Помощь очень ценится.