Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 20.05.2008, 20:57
Tovarisch Tovarisch вне форума
Прохожий
 
Регистрация: 18.03.2008
Сообщения: 33
Репутация: 10
По умолчанию Создание переменной из кода программы.

Господа, Здравствуйте.
Задача с инвертированными списками. Как бы в процессе появилась необходимость по появлению нового значения в параметрах, создавать для него переменную типа Tarray из кода программы(тип опять таки взян с вашего ресурса), прошу отписать о возможных методах решения.
Заранее благодарен.
Ответить с цитированием
  #2  
Старый 20.05.2008, 21:49
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

- динамический массив
- TList (указатели)
- Связанные списки и т.д.

Все зависит от конкретики задачи. в конце-концов, можно и БД писать.
Ответить с цитированием
  #3  
Старый 21.05.2008, 01:43
Tovarisch Tovarisch вне форума
Прохожий
 
Регистрация: 18.03.2008
Сообщения: 33
Репутация: 10
Радость

Tlist пожалуй подойдет спасибо, вся проблема была собственно в том что я человек неосведомленный мог долго копаться, а тут подсказали что искать).
Ответить с цитированием
  #4  
Старый 24.05.2008, 19:33
Tovarisch Tovarisch вне форума
Прохожий
 
Регистрация: 18.03.2008
Сообщения: 33
Репутация: 10
По умолчанию

Класс TDynArray
Код:
procedure TForm1.FormCreate(Sender: TObject);
var
p:pointer;
NewParam:TDynArray;
begin
NewParam.count:=2;
p:=@NewParam;
ParamList.Add(p);
end;
Возникло Исключение "Access violation at 00413ADA accessing 00000008", я так понимаю что проблема с размерами выделяемой памяти.
Не могу понять причину.Помогите пожалуйста.
Ответить с цитированием
  #5  
Старый 24.05.2008, 19:39
Аватар для Winny
Winny Winny вне форума
Продвинутый
 
Регистрация: 26.05.2007
Адрес: Планета земля, Россия, Москва
Сообщения: 620
Репутация: 30
По умолчанию

Перед строкой "NewParam.count:=2;" напиши:
Код:
NewParam:=TDynArray.Create
P.S.При Create могут быть параметры выполнения, а могут и не быть. Посмотри сам.
__________________

Ответить с цитированием
  #6  
Старый 25.05.2008, 18:12
Tovarisch Tovarisch вне форума
Прохожий
 
Регистрация: 18.03.2008
Сообщения: 33
Репутация: 10
По умолчанию

К сожаления не помогло более того, чисто ради эксперимента Поменял тип NewParam, на стринг(интегер, и еще много всяких), не помогло, то же исключение.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 04:04.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025