Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Указатель на Array [D7, XP]


Страницы:   1 2 3 4 5

rammic ©   (2011-08-14 15:50:00) 

Со смирением прошу ответить. Как в Delphi указатель на Array of Real
переводится на заданный элемент массива. Если в С++ это получается
если написать р[i] то в Delphi  1й элемент он показывает а любой другой
не хочет.


Игорь Шевченко   (2011-08-14 23:28:00) [81]


> Все-таки. как через указатель на массив получить i-й элемент
> массива?


если через "указатель на массив", то почти как в C, P^[i], при условии, что P имеет тип ^array [границы] of type.

иначе как в [2]


Inovet   (2011-08-14 23:23:00) [82]

> [8] rammic ©   (14.08.11 23:21)
> Все-таки. как через указатель на массив получить i-й элемент массива?

Вот те раз.


rammic   (2011-08-14 23:21:00) [83]

Все-таки. как через указатель на массив получить i-й элемент массива?


Loginov Dmitry   (2011-08-14 23:05:00) [84]


> Если в С++ это получается
> если написать р[i] то


> я хочу
> указателю присвоить адрес нужного и через него иметь доступ
> к любому
> его элементу, но не знаю как получить дальше первого элемента


В С++ с указателями уже разобрался?
Тогда обрадую. Указатели в дельфи от сишных ничем не отличаются. Если же не разбирался, тогда для чего нужно было приплетать здесь С++?


> Чтобы не писать много раз if...


Зачем писать одно и то же много раз? Один раз напиши.


Псарь   (2011-08-14 21:59:00) [85]


> Ega23 ©   (14.08.11 21:24) [5]


Можно через IfThen или так ещё:


var
arr: array[boolean] of array of Integer;
begin
arr[CheckBox1.Checked] ...
end;


Ega23   (2011-08-14 21:24:00) [86]

var
 arr: array[False..True] of array of Integer;
begin
 arr[CheckBox1.Checked] ...
end;


Дмитрий Белькевич   (2011-08-14 18:00:00) [87]

>Есть 2 массива, в зависимости от состояния Checkbox нужно обрабатывать
элементы одного или другого


type
TDAExt = array of extended;
var
Arr1, Arr2, Temp: TDAExt;

begin
if Checkbox1.Checked then
 Temp := Arr1
else
 Temp := Arr2;
with Temp do
begin
end;
end;


?


rammic   (2011-08-14 17:51:00) [88]

Есть 2 массива, в зависимости от состояния Checkbox нужно обрабатывать
элементы одного или другого, Чтобы не писать много раз if. я хочу
указателю присвоить адрес нужного и через него иметь доступ к любому
его элементу, но не знаю как получить дальше первого элемента


Юрий Зотов   (2011-08-14 17:48:00) [89]

> rammic ©   (14.08.11 15:50)  

Не нужно указателя. В Delphi это делается проще:

var
 P: array[0..9] of extended; // real - устаревший тип.
...
 for i := 0 to 9 do
   P[i] := 1;

Или с динамическим массивом:

type
 TP: array of extended;
var
 P: TP;
...
 SetLength(P, 10);
 for i := 0 to 9 do
   P[i] := 1;


Ega23   (2011-08-14 16:29:00) [90]

Шаблон затрещал.
Переведи на русский.


Страницы:   1 2 3 4 5

Наверх

Титульная страница Поиск, карта сайта Написать письмо