![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как вставить в TList элементы integer? [D6, XP]
Pavelkq © (2008-03-18 10:12:00)(Заранее прошу прощения за простоту, но для того эта ветка форума и создана)
Создаю TList и никак не могу разобраться, как туда вставить обычные переменные типа Integer?
ТакоеMyList.Insert(Position, MyItneger)не проходит.
Pavelkq (2008-03-18 12:32:00) [1]
> Сергей М.
Да, получилось. Спасибо за терпение.
Сергей М. (2008-03-18 12:20:00) [2]MyPointer = Pointer(MyInteger)
MyInteger = Integer(MyPointer)
Вот и вся премудрость)
DrPass (2008-03-18 12:18:00) [3]
> Типа, у меня в элементах хранятся не адреса переменных,
> а их значения?
В элементах хранится четырехбайтовое значение, по умолчанию это указатель. Как ты его будешь интерпретировать - это твое дело. Если втолкаешь туда значение, то и используй его как значение, а не как указатель
Pavelkq (2008-03-18 12:16:00) [4]Типа, у меня в элементах хранятся не адреса переменных, а их значения? Не могу до конца разобраться с синтаксисом.
Сергей М. (2008-03-18 12:08:00) [5]
> В чем тут проблема?
Перечитай посты выше этого.
Pavelkq (2008-03-18 12:06:00) [6]Заношу в чистый массив
MyList.Insert(L, pointer(MyInteger));
ShowMessage(inttostr(PInteger(MyList.Items[0])^));
В результате, на второй строке ошибка: Accsess violation at address 047579D in module Project1...
В чем тут проблема?
Ega23 (2008-03-18 10:41:00) [7]
> Ну в списке-то не указатели на integer-значения, а непосредственно
> integer-значения
>
мммать..
Виноват, проглядел. [5] не считается.
Сергей М. (2008-03-18 10:38:00) [8]
> ????
Ну в списке-то не указатели на integer-значения, а непосредственно integer-значения
Ega23 (2008-03-18 10:32:00) [9]
> Не соответствует вопросу.
????
Сергей М. (2008-03-18 10:26:00) [10]
> Ega23 © (18.03.08 10:24) [5]
Не соответствует вопросу.
Pavelkq (2008-03-18 10:26:00) [11]Спасибо
Сергей М. (2008-03-18 10:24:00) [12]
> тоже не получается
А своейголовой подумать ? По аналогии с [2] ?
Ega23 (2008-03-18 10:24:00) [13]
MyItneger:=PInteger(MyList.items(N))^;
З.Ы.
Не пора ли отправиться читать книжки?
Pavelkq (2008-03-18 10:23:00) [14]Отлично! А как его получить обратно?
MyItneger:=MyList.items(N) тоже не получается.
Сергей М. (2008-03-18 10:14:00) [15]MyList.Insert(Position, Pointer(MyItneger))
Johnmen (2008-03-18 10:13:00) [16]
> Такое MyList.Insert(Position, MyItneger) не проходит.
Отверстие узкое?