Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.11.02;
Скачать: CL | DM;

Вниз

Проблема с array of pstrlist   Найти похожие ветки 

 
АртемКо   (2007-10-28 16:11) [0]

Пишу консольные приложения с использованием KOL, всё нравилось.
Пока не пришлось делать массив списков строк.
Завел переменную _output:array of pstrlist;
В какой-то момент, задал ее длину setlength(_output,N);
Далее в цикле хочу инициализировать список и добавить в него строку
for i:=0 to N-1 do
begin
_output[i]:=New(PStrList);
_output[i].Add(s);
end;
Не добавляет оно строку s, а тупо вылетает с Run Time Error
в asm-процедуре TList.Insert на строке PUSH [EAX].fCount
Если заменить добавление на очистку списка, тоже ошибка, но уже в asm-процедуре TStrList.Delete на строке MOV ECX, [EAX].TList.fItems

Пробовал заменить динамический массив на массив фиксированной длины - вылет наблюдается в другом месте. Но все же наблюдается.

Может быть я что-то конкретно недопонимаю? С простым списком все работает "на ура"..


 
Вячеслав   (2007-10-28 16:21) [1]

Может я и не прав, но...
Есть функция NewStrList, а в ней New( Result, Create );


 
Dimaxx ©   (2007-10-28 16:59) [2]

for i:=0 to N-1 do
begin
_output[i]:=NewStrList;
_output[i].Add(s);
end;


 
АртемКо   (2007-10-28 17:02) [3]

Ок, спасибо, попробую.


 
Danger ©   (2007-10-28 18:34) [4]


> АртемКо   (28.10.07 17:02) [3]
> Ок, спасибо, попробую.

Специально ведь Кладов в уроках и мануале выделяет: используйте специальные функции-конструкторы для всех объектов. Не пользуйтесь New() напрямую ...


 
АртемКо   (2007-11-11 19:54) [5]

Просто меня заглючило. :)
KOL использую недавно. Сначала делал как надо - NewStrList. А тут запутался.



Страницы: 1 вся ветка

Текущий архив: 2008.11.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
1-1202143624
Сергей
2008-02-04 19:47
2008.11.02
Duplicate resource


15-1218713094
@!!ex
2008-08-14 15:24
2008.11.02
Хочу купить монитор


15-1221060690
keymaster
2008-09-10 19:31
2008.11.02
как избавиться от хинта?


2-1222403486
АндрейК
2008-09-26 08:31
2008.11.02
на DBGrid1KeyDown значение передать Edit1


15-1220948600
Anatoly Podgoretsky
2008-09-09 12:23
2008.11.02
Дмитрий Олегович успокаивает