SetLength dando Access Violation

Delphi

09/01/2008

Galera, to desesperado...

Quando eu chamo o setlength pra definir o tamanho de um vetor tipo double ele da violação de acesso. Não sei mais o q fazer, será que alguém tem alguma idéia do q se trata isso:

if PAxB < 0.05 then
begin
//desdobramento da interação AxB (A d. B)
SetLength(SQFatAdFatB,NiveisB); //aqui da o problema...
for i := 0 to NiveisB - 1 do
begin
SQFatAdFatB[i] := 0;
for j := 0 to NiveisA - 1 do
begin
SQFatAdFatB[i] := SQFatAdFatB[i] + sqr(MTAB[j,i]);
end;
SQFatAdFatB[i] := (SQFatAdFatB[i]/(NiveisC*NRep)) - (sqr(MTB[i])/(NiveisA*NiveisC*NRep));
end;

muito obrigado pela atenção
abraço a todos
Walter´


Wart

Wart

Curtidas 0

Respostas

Massuda

Massuda

09/01/2008

Como você declarou SQFatAdFatB? Para poder usar SetLength, SQFatAdFatB deveria ser...
var
  SQFatAdFatB: array of Double;
...



GOSTEI 0
Wart

Wart

09/01/2008

Então massuda, ja fiz isso sim,t a td certinho...

Na verdade estou tendo problemas com stack overflow, to meio desesperado, hehee

abri outro tópico, c vc puder dar uma passadinha por la, hehee

agradeço a atenção de todos

um grande abraço


GOSTEI 0
Djjunior

Djjunior

09/01/2008

qual o valor de NiveisB? ela foi realmente inicializada, com um valor inteiro maior que 0? fiz testes aqui no Delphi7 e funcionou.


GOSTEI 0
POSTAR