Показать сообщение отдельно
  #1  
Старый 23.11.2010, 14:23
whizzkey whizzkey вне форума
Прохожий
 
Регистрация: 16.10.2010
Сообщения: 35
Репутация: 10
По умолчанию Удаление элемениа из динамического массива

уважаемые форумчане, подскажите пожалуйста что я делаю не так - суть вот в чем у меня есть двумерный массив в котором храню номер вопроса и номер правильного ответа

Код:
An:array[1..NQ,1..NA] of String[100];
где nq - ограничение на макс 
количество вопросов(100) и 
na - макс число ответов(3)

Мне нужно организовать удаление текущего вопроса (равного переменной n) со сдвигом остальных на -1 позицию
Для этого я создаю динамический массив

Код:
c: array of String;

в который пишутся все эелементы кроме n следущей процедурой

Код:
SetLength(c, 0);
  For i:=1 to 100 do
    If i <> n then
      begin
        SetLength(c, Length(c)+1);
        b[Length(c)-1]:=Test.An[i];
      end;
  For i:=1 to 100 do Test.An[i]:='';
  For i:=0 to Length(c)-1 do Test.An[i+1]:=c[i];

На что делфи мне пишет incompatible types, хотя ПУЛЯ В ПУЛЮ аналогичная процедура по удалению заголовка вопроса идет на ура(но там массив одномерный QW:array[1..NQ] of String)

З.Ы. Test - переменная типа record
Ответить с цитированием