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

Вниз

Поменять местами два объекта   Найти похожие ветки 

 
н083нький   (2009-01-19 02:55) [0]

Всем привет, я новенький, возник вопрос.
Есть массив объектов (экземпляров класса). Я их всех в цикле об-Create-ил. Теперь мне надо поменять местами 2 элемента. Например, чтоб на месте пятого элемента стоял шестой, а на месте шестого - пятый. Как это сделать с объектами? заранее спасиб0.


 
Германн ©   (2009-01-19 03:01) [1]


> Например, чтоб на месте пятого элемента стоял шестой, а
> на месте шестого - пятый. Как это сделать с объектами? заранее
> спасиб0.
>

А при чём тут объекты?


 
p177-bu11 inno 69   (2009-01-19 03:05) [2]

значит нет разницы, что с объектами?

var
 b: TStudent;
 ar: array of TStudent;
//......
 b := ar[5];
 ar[5] := ar[6];
 ar[6] := b;
//......

так правильно будет? Ничего, что там объекты используются?


 
Германн ©   (2009-01-19 03:10) [3]


> p177-bu11 inno 69   (19.01.09 03:05) [2]
>
> значит нет разницы, что с объектами?
>
> var
>  b: TStudent;
>  ar: array of TStudent;
> //......
>  b := ar[5];
>  ar[5] := ar[6];
>  ar[6] := b;
> //......
>
> так правильно будет? Ничего, что там объекты используются?
>

Правильно. И объекты тут ни при чём.
Но "учебник" лучше всё-таки иметь под рукой.


 
н083нький   (2009-01-19 03:12) [4]

согласен :) спасиб0


 
Юрий Зотов ©   (2009-01-19 06:29) [5]

> н083нький   (19.01.09 03:12) [4]

Любая объектная переменная, даже если она является элементом массива (да и вообще чем угодно) фактически представляет собой типизированный указатель. Это означает, что она хранит в себе не сам объект, а его адрес в памяти; сам же объект хранится отдельно (по этому адресу) и ни про какие там переменные даже и не знает ничего (тем более, что их может быть и не одна, а сколько угодно).

Поэтому в Вашем массиве реально хранятся не сами объекты, а их адреса в памяти. То есть, обыкновенные целые числа.

Что из этого следует - видимо, уже ясно.
:о)



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

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

Наверх




Память: 0.48 MB
Время: 0.013 c
4-1206374073
MihaelSA
2008-03-24 18:54
2009.03.01
Пример хука на CreateProcess или ZwCreateProcess


15-1230633670
KilkennyCat
2008-12-30 13:41
2009.03.01
Всех с новым годом.


2-1231938227
Ruzzz
2009-01-14 16:03
2009.03.01
как-то на картинке карты земли находить точку по широте и долготе


2-1232198187
Динара
2009-01-17 16:16
2009.03.01
Организация цикла между дат


8-1191349647
leonidus
2007-10-02 22:27
2009.03.01
Воспроизведение MP3 через MediaPlayer