Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.06.2014, 14:38   #1
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию Cписок записей(как организовать)?

Короче сразу к теме:
Есть запись(тут только её пример):
Код:
TMyRecord = record 
NameRecord: String; 
Index: Integer;
end;
Вопрос: Как организовать список таких записей(как StringList для строк)? У меня есть идейка, но я хочу сначала увидеть ваши предложения?
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 17.06.2014, 14:42   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Сделай ее не записью а классом. А контейнер списка будет TObjectList. Примеры на форуме я приводил - можешь поискать по этому слову.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.06.2014, 14:48   #3
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Заюзай динамический массив
Код:
x: Array of TMyRecord;
Цитата:
Короче сразу к теме:
Что, даже чаю не попьете?
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 17.06.2014, 14:50   #4
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,434
По умолчанию

саша40, обобщенные типы данных(они же дженерики) - наше все.
Код:
var
  L:TList<String>; //Список указателей на строки
  L:TList<Integer>; //Список указателей на целые
  L:TList<Любой тип данных>; //Список указателей на любой тип данных
  OL:TObjectList<TMyClass>; //Список из TMyClass
  OL:TObjectList<TMyrecord>; //Список из TMyrecord
  OL:TObjectList<Любой объектный тип данных>; //Список из любого объектного типа данных
Все что ниже Delphi 2009 - пролетает.

Берете TObjectList, наследуете свой класс и используете для своих объектов.

Stilet, в лазаре они тоже есть. Берите на заметку

Последний раз редактировалось Человек_Борща; 17.06.2014 в 14:54.
Человек_Борща вне форума Ответить с цитированием
Старый 17.06.2014, 14:51   #5
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Сделай ее не записью а классом. А контейнер списка будет TObjectList. Примеры на форуме я приводил - можешь поискать по этому слову.
Проблема в том, что запись должна быть такой как есть. По ней программа будет работать(С ней я ещё вернусь ). Посмотрел как StringList происходит, так увидел такую последовательность:
TStringList - TStrings - TPersistent - TObject.
Всё равно спасибо за идею.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 17.06.2014, 14:54   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Stilet, в лазаре они тоже есть. Берите на заметку
Знаю, но не люблю шаблонирование.
Цитата:
Проблема в том, что запись должна быть такой как есть.
Проблема в том что ты хочешь городить свой огород, и то что тебе советуют отметаешь. Зачем тогда спрашивал, если однозначно и безповоротно нужно делать именно так как ты задумал?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.06.2014, 14:55   #7
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Цитата:
Сообщение от Utkin Посмотреть сообщение
Заюзай динамический массив
Код:
x: Array of TMyRecord;
Что, даже чаю не попьете?
С массивом моей идеей и было. Строить примерно так же как со строками, но немного по другому. В общем у меня были примерно уже замыслы кода, но решил посмотреть, что вы предложите.

Не по теме:
"Когда программирую, чаю пью очень много".
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 17.06.2014, 14:56   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Проблема в том, что запись должна быть такой как есть
Не важно массив, класс, List или даже StringList, ну и прочее - везде можно работать со структурой такой как есть
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 17.06.2014, 14:56   #9
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
саша40, обобщенные типы данных(они же дженерики) - наше все.
Код:
var
  L:TList<String>; //Список указателей на строки
  L:TList<Integer>; //Список указателей на целые
  L:TList<Любой тип данных>; //Список указателей на любой тип данных
  OL:TObjectList<TMyClass>; //Список из TMyClass
  OL:TObjectList<TMyrecord>; //Список из TMyrecord
  OL:TObjectList<Любой объектный тип данных>; //Список из любого объектного типа данных
Все что ниже Delphi 2009 - пролетает.

Берете TObjectList, наследуете свой класс и используете для своих объектов.

Stilet, в лазаре они тоже есть. Берите на заметку
У меня Delphi 7. Старая добрая семерка.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 17.06.2014, 14:57   #10
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
У меня Delphi 7. Старая добрая семерка.
Можете считать что динамический массив это шаблонизированный вариант списка. Прародитель дженерика. Реализуете удаление с середины и будет Вам счастье.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создать БД. Cписок из фамилий студентов и номеров телефонов. Выделить номер АТС. Поиск по номеру. ( делфи ) dima96 Помощь студентам 1 03.02.2013 13:55
как организовать? (C++) Jеня Помощь студентам 2 20.11.2011 18:43
Cписок отмеченных Checkbox'ов Tycuk Компоненты Delphi 2 29.09.2010 14:18
Cписок кольцевой.С++.Не могу найти ошибку. Срочно. NamelessEndless Помощь студентам 11 22.01.2009 13:09
Как лучше организовать базу данных типо как в ICQ Руслантус БД в Delphi 3 09.08.2008 23:57