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

Вниз

Очередная несложная разминка для начинающих ;)   Найти похожие ветки 

 
MBo ©   (2002-05-24 12:03) [0]

Найти ошибку в реализации класса списка целых чисел
Предложить методы исправления.


TIntList=class(TList)
private
procedure SetInt(Index:Integer;Value:Integer);
function GetInt(Index:Integer):Integer;
public
property Items [index:Integer]:Integer read GetInt write SetInt; default;
procedure Add(Value:Integer);
end;

implementation

procedure TIntList.SetInt(Index:Integer;Value:Integer);
begin
inherited Items[Index]:=@Value;
end;

function TIntList.GetInt(Index: Integer): Integer;
begin
Result:=PInteger(inherited Items[Index])^;
end;

procedure TIntList.Add(Value:Integer);
begin
inherited Add( @Value);
end;



 
Виктор Щербаков ©   (2002-05-24 12:07) [1]

:-)))


 
MBo ©   (2002-05-24 12:12) [2]

>Виктор Щербаков
Реально встретилось, там еще кое-что было ;)


 
Alx2 ©   (2002-05-24 12:17) [3]

@Value - адрес в стэке :)


 
Кулюкин Олег ©   (2002-05-24 12:20) [4]

:))))))


 
MBo ©   (2002-05-24 12:23) [5]

>Alx2
на самом деле SetInt так и было, а Add так:
procedure TIntList.Add( VAR Value:Integer);


 
Alx2 ©   (2002-05-24 12:37) [6]

Борис, откуда выкопал этот "смелый" подход?


 
MBo ©   (2002-05-24 12:50) [7]

>Alx2
Спросили, почему компилируется, но не вполне работает ;)


 
Tonie ©   (2002-05-24 13:17) [8]

Класс %)))))



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

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

Наверх




Память: 0.48 MB
Время: 0.009 c
8-88958
Королев
2002-02-15 13:02
2002.06.27
нужны общие соображения о том как организовать протокол...


4-89073
Sirus
2002-04-30 07:31
2002.06.27
Как изменить текущее разрешение экрана и цвет рабочего стола


1-88893
Lord Warlock
2002-06-14 09:48
2002.06.27
Excel


6-88977
Brand
2002-04-09 14:30
2002.06.27
ICQ


1-88937
abitur
2002-06-08 16:05
2002.06.27
Выделение памяти