PascalABCCompiler.Core v3.0.0.1064 (24.10.2015), debug version
Runtime version: 4.0.30319.34209
OS version: Microsoft Windows NT 6.1.7601 Service Pack 1
Processor count: 4
WorkingSet: 137808 kb
Ниже приведённый код не компилируется, хотя по логике Pascal обязан!
type
TFileTypes = (ftGames, ftUsers, ftData);
var
ftIndex: TFileTypes;
aFiles: Array[TFileTypes] Of String = (‘abcd.ini’, ‘efgh.ini’, ‘klmno.ini’);
При явном указании грагиц диапазона теряется весь смысл использования такого подхода.
Это в этом тестовом примере всё рядом лежит и массив aFiles имеет значения.
Обычно определения типов, констант находятся в своих юнитах
и подключаются в секции uses по месту необходимости.
Массивы типа aFiles не имеют предустановленных данных, они туда попадают приработе.
Т.о. изменив определение достаточно просто скомпилировать и всё работает.
Предложенный Вами вариант потребует внести изменения по всем файлам проекта
перед компиляцией, что очень плохо, т.к. можно что-то где-то пропустить и долго потом
искать ошибку.
да, это какое-то надуманное ограничение. перечислимый тип является, конечно, порядковым/диапазонным. в следующем билде будет исправлено, исправление есть на githube
Uses GraphAbC; Var p:picture;
добавьте 4 символа пробела, перед форматированным текстом
Begin p:=picture.Create(100,100);
p.FloodFill(50,50,clred); p.Draw(50,50); end.
Казалось бы, результат данной программы это вывод красного квадрата в область окна, однако при запуске данной программы ожидаемого результата не последовало. Я считаю, что это ошибка модуля GraphABC, если это не так, пожалуйста, запишите правильный рабочий код.
С уважением пользователь