Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.06.06;
Скачать: [xml.tar.bz2];

Вниз

Помогите пожалуйста найти правильное решение   Найти похожие ветки 

 
Smok_er   (2002-05-24 11:56) [0]

Уважаемые мастера! Подскажите пожалуйста, каким способом можно организовать таблицу вида Name Value1 Value2 Value3 etc. в памяти и по возможности с быстрым доступом к этим полям, например по имени.
Пробовал создавать такое количество стринг листов, сколько этих самых полей, но не сильно удобно, начинается путаница и т.д.


 
onix   (2002-05-24 12:18) [1]

Попробуй в одном TStringlist"е сохранять объекты в которых будут твои поля. К примеру:
type

TMyObject = class
field1 : string;
field2 : integer;
.
.
end;

Затем где-то в программе:

procedure Sample;
var MyObj : TMyObject;
begin
MyObj := TMyObject.Create;
MyStrinfList.Items.AddObject("String1", MyObj);
.....
.....
end;


 
Shaman_Naydak   (2002-05-24 13:23) [2]

var
Arr: array of record
Name: string;
Value1: Integer;
Value2: string;
etc
end;
+ через TList, реализовать одно/двунаправленный списое
Вариантов можно организовать до чертиков...


 
Smok_er   (2002-05-25 22:46) [3]

А можно поподробнее про эти 2 варианта?
Дело в том, что я в классах полный профан (к сожалению) и никак не могу получить значение в первом случае.

И интересно, как обращаться к элементам списка во втором случае?

Помогите пожалуйста...


 
KilkennyCat   (2002-05-25 23:38) [4]

я бы второй пример написал бы по-понятнее:

Type TArr = record
Name: string;
Value1: Integer;
Value2: string;
etc
end;

var
Arr : array of TArr

Доступ:

SetLength(Arr, 2);
Arr[2].Value1 := ...



 
Smok_er   (2002-05-26 00:10) [5]

Вся проблема в том, что количество возможных записей неизвестно :(. Можно использовать этот метод при неизвестном количестве записей?


 
KilkennyCat   (2002-05-26 09:19) [6]

Да, можно. SetLength устанавливает необходимое число записей, то есть это - работа с динамическим массивом, размеры которого могут быть ограничены только типом переменной размера и ресурсами.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.06.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.007 c
1-17868
PC_DOS
2002-05-26 16:25
2002.06.06
ПОМОГИТЕ!!! СРОЧНО НУЖЕН ИСХОДНИК TColorGridBox или похожий


1-17850
Грифон
2002-05-24 22:47
2002.06.06
Симплекс-метод


1-17901
harismatik
2002-05-27 13:48
2002.06.06
Как в компоненте TLabel повернуть текст на 90 градусов?


1-17986
начинающий програмер
2002-05-23 21:50
2002.06.06
Непонятно


1-18037
roman_tutov@mail.ru
2002-05-24 12:21
2002.06.06
Как отловить что окно свернутое ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский