TAbstractPoint=class(TList)
protected
function Get(Index: Integer): Single;
procedure Put(Index: Integer; Item: Single);
public
constructor Create(AxesCount:integer);
property Items[Index: Integer]: Single read Get write Put; default;
end;
constructor TAbstractPoint.Create(AxesCount: integer);
begin
inherited Create;
Count:=AxesCount;
end;
function TAbstractPoint.Get(Index: Integer): Single;
begin
result:=integer(inherited Get(index));
end;
procedure TAbstractPoint.Put(Index: Integer; Item: Single);
begin
inherited Put(Index,Pointer(Item));
end;
var c:TAbstractPoint;
begin
c:=TAbstractPoint.Create(2);
c[0]:=10;
c[1]:=0;
end;
присвоение значения элементу TList
Код:
проблема заключается в том c[0] присваивается не то значение (а именно 1092616192)
Цитата: Михаил
имеется такой класс:
Код:
TAbstractPoint=class(TList)
protected
function Get(Index: Integer): Single;
procedure Put(Index: Integer; Item: Single);
public
constructor Create(AxesCount:integer);
property Items[Index: Integer]: Single read Get write Put; default;
end;
constructor TAbstractPoint.Create(AxesCount: integer);
begin
inherited Create;
Count:=AxesCount;
end;
function TAbstractPoint.Get(Index: Integer): Single;
begin
//result:=[COLOR=Red]integer[/COLOR](inherited Get(index));
result:=single(inherited Get(Index));
end;
procedure TAbstractPoint.Put(Index: Integer; Item: Single);
begin
inherited Put(Index,Pointer(Item));
end;
var c:TAbstractPoint;
begin
c:=TAbstractPoint.Create(2);
c[0]:=10;
c[1]:=0;
end;
protected
function Get(Index: Integer): Single;
procedure Put(Index: Integer; Item: Single);
public
constructor Create(AxesCount:integer);
property Items[Index: Integer]: Single read Get write Put; default;
end;
constructor TAbstractPoint.Create(AxesCount: integer);
begin
inherited Create;
Count:=AxesCount;
end;
function TAbstractPoint.Get(Index: Integer): Single;
begin
//result:=[COLOR=Red]integer[/COLOR](inherited Get(index));
result:=single(inherited Get(Index));
end;
procedure TAbstractPoint.Put(Index: Integer; Item: Single);
begin
inherited Put(Index,Pointer(Item));
end;
var c:TAbstractPoint;
begin
c:=TAbstractPoint.Create(2);
c[0]:=10;
c[1]:=0;
end;