![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
Шушпан |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 8 Пол: Мужской Репутация: ![]() ![]() ![]() |
Помогите пожалуйста
Я пишу процедуру, которая осуществляет добавление элемента в массив при нажатии кнопки. Но при проверке работы выдается ошибка... в чем дело, понять не могу. Не подкажете? Код type words=array of string; procedure add_to_array(var base:words; rus:string); var k,i:integer; tmp:words; begin i:=length(base); tmp:=nil; setlength(tmp,i+1); for k:=1 to i do begin tmp[k]:=base[k]; end; tmp[i+1]:=rus; base:=nil; i:=i+1; setlength(base,i); base:=copy(tmp,0,i); end; procedure TForm1.baseframeaddbuttonClick(Sender: TObject); var i,k:integer; str,rus:string; base:words; begin rus:=baseframe.rusword.Text; i:=length(base); add_to_array(base,rus); end; plz |
![]() ![]() |
Шушпан |
![]()
Сообщение
#2
|
Группа: Пользователи Сообщений: 8 Пол: Мужской Репутация: ![]() ![]() ![]() |
Спасибо, теперь буду разбираться во всем остальном
![]() Премного благодарен!!! ДОбавление: Упс, еще одна проблема. Как можно применить функцию length к многомерным динамическим массивам ? Я пытаюсь так: Код procedure add_to_arr(var base:words; const rus,eng:string); var i:integer; begin i:=length(base[cols]); {так} i:=i+1; setlength(base, cols, i); base[0,pred(i)]:=rus; base[1,pred(i)]:=eng; end; При проверке работы программы компилятор выдает ошибку "Project raised exception class EAcessViolation with message......." и т.д. Как же использовать эту функуцию... Читал FAQ - там не нашел. Подскажите кто-нибудь, пожалуйста. Сообщение отредактировано: Шушпан - 24.02.2005 13:32 |
![]() ![]() |
![]() |
Текстовая версия | 24.07.2025 3:20 |