![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Динамический массив типа Record [D6, WinXP]
Pavelkq © (2004-07-01 13:01:00)Здравствуйте! Есть задача создать массив кривой структуры:
1. Первое поле содержит всего одно число типаlongint.
2.Второе поле это динамический массив такого типа:
2.1. Типstring
2.2. Типlongint
2.3. Тип динамический массив типаstring
2.4. Тип динамический массив типаLingInt
Делаю все, как по часам:
// Создание структуры индексной таблицы (2)
Type
TIndex=record
Lema : string[50];// Пункт 2.1.
ColLem: LongInt; // Пункт 2.2.
Word : array of string[50];// Пункт 2.3.
Index : array of LongInt; // Пункт 2.4.
end;
// Создание массива индекса с полем для пункта 1.
Type TBase=Record
Sum:LongInt; // Вот он, пункт 1.
SIndex:array of TIndex;// Пункт 2 целиком.
end;
// Назначаем переменную Base вышеуказанного типа.
var Base:TBase;
Все компилируется отлично!
Далее начинаю работать с этой таблицей.
Base.Sum:=KakoyToInteger;
SetLength(Base.SIndex,Base.Sum);
...
WordI:=0;// Тип Integer
...
WordI:=WordI+1;
SetLength(Base.SIndex[N].Word,WordI);
SetLength(Base.SIndex[N].Index,WordI);
Base.SIndex[LemI].Word[N]:=Words;
Base.SIndex[LemI].Index[N]:=Int;
...
И вот при WordI=4 на выполненииSetLength(Base.SIndex[N].Index,WordI);вылетает непонятная ошибка и код в CPU.
Может быть реализовать эту структуру в другом типе. Например в баз данных?
R (2004-07-01 13:49:00) [41]>Лучше класс создай, с ним проще будет.
Вот это верно.
Ega23 (2004-07-01 13:36:00) [42]И вообще нахрена нужен такой рекорд? Лучше класс создай, с ним проще будет.
R (2004-07-01 13:34:00) [43]Вот анализирую я алгоритмы и так много любителей
создавать сложные структуры.
Зачем!
Зачем такой сложный тип.
Ведь все можно сделать гораздо проще и без Type
Ведь сам черт голову сломает при работе с ним.
Так много любителей работать с дин.памятью и другими вещами
усложняющими строение программы(не относится к данной ветке).
Digitman (2004-07-01 13:06:00) [44]
> непонятная ошибка
кому непонятная ? тебе непонятная ? что конкретно непонятно в ней ? буквы незнакомые или что ?