| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > Поле записи в виде динамического массива |
| Автор: Kationchic 15.4.2010, 10:44 | ||||
есть запись
и когда я пытаюсь выделить память для shops
выплевывает ошибку во время выполнее. Подскажите пожалуйста, почему такое может быть. |
| Автор: Frees 15.4.2010, 10:53 |
какую shops_in_city это какой тип? Tshops_in_city? почему тогда shops_in_city[cities] а не shops_in_city.shop? |
| Автор: Mikel 15.4.2010, 11:02 |
| shops: array of string[10]; массив фиксированной длинны, а работаете как с динамическим SetLength(shops_in_city[cities].shops,shops+1); shops+1 - вообще не понятно как к массиву можно прибавить единицу |
| Автор: Frees 15.4.2010, 11:09 |
массив динамический string[10] это длинна каждого элемента |
| Автор: Mikel 15.4.2010, 13:13 | ||
точно! загнался Тогда, возможно, имелось ввиду SetLength(shops_in_city[cities].shops,Length(shops_in_city[cities].shops)+1); |
| Автор: bems 15.4.2010, 20:43 |
| И много раз увеличичивать на единицу не хорошо. Лучше один раз увеличить с запасом. |
| Автор: profesiachuvak 16.4.2010, 00:26 | ||||
Если эта запись справедлива:
То для того чтобы выделить память массиву нужно писать так:
|