Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.11;
Скачать: CL | DM;

Вниз

Указатели   Найти похожие ветки 

 
Random   (2002-03-30 18:30) [0]

Учусь работать с указателями. Пожалуйста, подскажите, как создать переменную, которая, в зависимости от обстоятельств указывала бы на запись или массив. Как ее описать, и к ней обращаться(считывать и записывать)
Большое спасибо.


 
MBo ©   (2002-03-30 18:34) [1]

type rec=record
a,b:integer;
end;
prec=^rec;
var p:pointer;

p:=...
prec(p)^.a:=3;


 
Random   (2002-03-30 19:03) [2]

Что-то очень сложно :)
Объясните, если не трудно на моем примере:
у меня есть массив A:array of TControl и массив B:Array of Record(left,top:integer;end;)
и выражение Left:=Data[i].Left;
Мне нужно, чтобы в одном случае data указывала на массив A, а в другом на B.
Спасибо.


 
Anatoly Podgoretsky ©   (2002-03-30 19:26) [3]

Странного хочешь, но

case что то of
0: TA(Data[i].Left);
1: TB(Data[i].Left);


 
Дима2 ©   (2002-03-30 19:30) [4]

Или if или case. Полностью с вами согласен.


 
Random   (2002-03-30 19:41) [5]

А нельзя строчку Left:=Data[i].Left; оставить без изменений, а в if/case менять свойства data? Если да, то как?


 
Anatoly Podgoretsky ©   (2002-03-30 19:54) [6]

Нельзя нужно явное приведение, вот если бы не Left:=Data[i].Left, а x := Data[i].Left то можно, но это будет еще большее извращение, может функцией оформишь или еще лучше вообще подход изменишь, явно что то не в порядке в консерватории.


 
Random   (2002-03-30 19:57) [7]

спасибо :)



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

Текущий архив: 2002.04.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
1-32853
atmospheric
2002-03-28 17:37
2002.04.11
удаление Item из ListView ?


1-32902
PlaZZma
2002-03-29 22:00
2002.04.11
Может это что-то глючит?


1-32732
CrazyAngel
2002-03-28 20:02
2002.04.11
Как создать что-нибудь.lnk ?


3-32628
IronHawk
2002-03-17 17:36
2002.04.11
Как лечить месагу


1-32899
webnew
2002-03-29 17:46
2002.04.11
Подключение к IIS 5.0