Duvica com Orientação a Objeto
Criei uma classe e quando chamo o construtor dela, o Delphi me retorna um erro.
Codigo:
type
Tcidade = class
public
posicaox : array of integer;
posicaoy : array of integer;
constructor cidade;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
constante:=Tconstantes.Create;
cid:= Tcidade.cidade;
end;
constructor Tcidade.cidade;
var i : integer;
begin
constante.qG:=5;
for i := 0 to constante.qG - 1 do
begin
posicaox[i]:=abs(random(constante.PosMaxX));
posicaoy[i]:=abs(random(constante.PosMaxY));
end;
end;
ERRO : Acesso Violado.
Se alguem souber o que estou fazendo de errado, por favor me diga.
Obrigado.
Marco A. Justo
Codigo:
type
Tcidade = class
public
posicaox : array of integer;
posicaoy : array of integer;
constructor cidade;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
constante:=Tconstantes.Create;
cid:= Tcidade.cidade;
end;
constructor Tcidade.cidade;
var i : integer;
begin
constante.qG:=5;
for i := 0 to constante.qG - 1 do
begin
posicaox[i]:=abs(random(constante.PosMaxX));
posicaoy[i]:=abs(random(constante.PosMaxY));
end;
end;
ERRO : Acesso Violado.
Se alguem souber o que estou fazendo de errado, por favor me diga.
Obrigado.
Marco A. Justo
Manjuneiro
Curtidas 0
Respostas
Japa
29/10/2003
amigo pelo erro que esta dando voce esta violando um acesso... tipo estourando memoria... tentando acessar um lugar que nawn existe... por isso como vc esta declando o seu vetor??? tente declarar assim:
boa sorte amigo... :wink:
var posicaox : array[0..99] of integer;
boa sorte amigo... :wink:
GOSTEI 0
Beppe
29/10/2003
Você não inicializou os arrays posicao. Eles são [b:40acc8cf1b]nil[/b:40acc8cf1b] no momento que tu usa.
Chame SetLength neles.
Ataliba
Chame SetLength neles.
Ataliba
GOSTEI 0