![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Структура (запись) [D7]
Tonich © (2005-09-14 11:40:00)Такой вопрос.
Можно ли по полям структуры пробежаться в цикле?
Reindeer Moss Eater (2005-09-14 14:08:00) [1]Пока компилятор их не встретил, это идентификаторы.
begin...end (2005-09-14 13:01:00) [2]
> Reindeer Moss Eater © (14.09.05 12:55) [18]
Я пойду удавлюсь, ладно? a, b и c -- это идентификаторы полей. А не смещения.
Игорь Шевченко (2005-09-14 13:00:00) [3]В .Net - можно :)
Tonich (2005-09-14 12:59:00) [4]
> Reindeer Moss Eater © (14.09.05 12:52) [14]
вот что я хотел сказать
> a, b, c -- это поля. Но у каждого поля есть смещение от
> начала записи.
но ни как не "a,b,c -это смещения"
> Есть в твоем вопросе смысл?
конечно есть, но видимо для некоторых он оказался скрытым )))
ладно все спасибо )
Ega23 (2005-09-14 12:55:00) [5]А где прикол в [7]?
Так цикл же! :о)
Reindeer Moss Eater (2005-09-14 12:55:00) [6]>a, b, c -- это поля. Но у каждого поля есть смещение от начала записи.
Расскажи это rtl.
Они полями остаются пока их компилятор не увидел.
Reindeer Moss Eater (2005-09-14 12:54:00) [7]>Tonich © (14.09.05 11:40)
>Такой вопрос.
>Можно ли по полям структуры пробежаться в цикле?
>По полям структуры можно пробежаться в цикле.
>тохда вообще пропадает весь смысл в этом цикле
С логикой дружим?
REA (2005-09-14 12:54:00) [8]А где прикол в [7]? можно еще пару циклов забабахать, чтобы читать сложнее было.
begin...end (2005-09-14 12:53:00) [9]
> Tonich © (14.09.05 12:48) [13]
> а вы хотите сказать что там a,b,c -это смещения?????
a, b, c -- это поля. Но у каждого поля есть смещение от начала записи.
Reindeer Moss Eater (2005-09-14 12:52:00) [10]>а вы хотите сказать что там a,b,c -это смещения?????
А ты хочешь сказать, что это имена во время выполнения программы?
В рантайме нет никаких имен полей вообще.
Ну и какой смысл спрашивать про цикл, если смысла в цикле нет?
Есть в твоем вопросе смысл?
Tonich (2005-09-14 12:48:00) [11]
> Reindeer Moss Eater © (14.09.05 12:38) [10]
когда я говорил что
> тохда вообще пропадает весь смысл в этом цикле
то имел ввиду вот это
> jack128 © (14.09.05 12:18) [7]
а вы хотите сказать что там a,b,c -это смещения?????
> Reindeer Moss Eater © (14.09.05 12:41) [11]
нет
REA (2005-09-14 12:47:00) [12]Можно объявить структуру с case массивом и бегать по ней. А что автору надо от пробегов по структуре?
Reindeer Moss Eater (2005-09-14 12:41:00) [13]Интересно, а что же ты вообще хотел сделать циклом?
Дай угадаю.
Проинициализировать значения полей?
Reindeer Moss Eater (2005-09-14 12:38:00) [14]Поля по именам перечислять не надо.
Есть смещения от начала структуры.
тохда вообще пропадает весь смысл в этом цикле
Это не совсем так.
Смысл пропадает не в цикле.
Пропадает смысл в твоем вопросе.
Ega23 (2005-09-14 12:36:00) [15]У структуры есть N полей.
Угу. А если это union?
Tonich (2005-09-14 12:33:00) [16]
> jack128 © (14.09.05 12:18) [7]
нет вы меня конечно извините , но помоему это изврат какой-то
да и цикл странный )
> Memo1.Lines.add(IntToStr(a));
откуда будет известно что такое "а" это же поле структуры,
может выхотели написать
var rec:TRec;
Memo1.Lines.add(IntToStr(Rec.a));
тохда вообще пропадает весь смысл в этом цикле если и так перечисляем каждое поле структуры
jack128 (2005-09-14 12:18:00) [17]type
TRec = record
a: byte;
b: string;
с: Double;
end;
for i := 0 to 2 do
case i of
0: Memo1.Lines.add(IntToStr(a));
1: Memo1.Lines.add(b);
2: Memo1.Lines.add(FloatToStr(с));
end;
;)
Reindeer Moss Eater (2005-09-14 12:16:00) [18]У структуры есть N полей.
У каждого поля есть длина.
Всегда можно написать цикл, в котором на каждой итерации иметь доступ к очередному полю.
В чем проблема-то?
Tonich (2005-09-14 12:14:00) [19]
> Reindeer Moss Eater © (14.09.05 12:09) [4]
поведай...
Reindeer Moss Eater (2005-09-14 12:09:00) [20]По полям структуры можно пробежаться в цикле.