![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Указатель на Array [D7, XP]
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]Шаблон затрещал.
Переведи на русский.