Czyszczenie listy

Odpowiedz Nowy wątek
2006-12-29 16:45
0

Dlaczego wyskakuje mi błąd "Error:204 Invalid pointer operation " przy dispose:

var glowa:wskaznik;
procedure czysc;
var us:wskaznik;
begin
while glowa <> nil do
begin
us:=glowa^.wsk;
dispose(glowa);
glowa:=us;
end;
end;

"Nie po to piszę programy żeby korzystać z cudzych"

Pozostało 580 znaków

2006-12-29 18:26
dj
0

Spróbuj zamiast New i Dispose użyć GetMem i FreeMem, może to one coś psują.


Great spirits have always encountered violent opposition from mediocre minds.

Pozostało 580 znaków

2006-12-29 18:57
0

to samo


"Nie po to piszę programy żeby korzystać z cudzych"

Pozostało 580 znaków

2006-12-30 00:00
0
elmo123 napisał(a)

Dlaczego wyskakuje mi błąd "Error:204 Invalid pointer operation " przy dispose:

var glowa:wskaznik;
procedure czysc;
var us:wskaznik;
begin
while glowa <> nil do
begin
us:=glowa^.wsk;
dispose(glowa);
glowa:=us;
end;
end;

Nie powinno być ?

while Glowa <> nil do
begin
  Dispose(Glowa);
  Glowa := Glowa^.Wsk;
end;

<span style="color: blue">"Kolarstwo to jedna z najtrudniejszych dyscyplin sportu. Nawet najgorszy kolarz jest wciąż wybitnym sportowcem."
s.p. Marco Pantani
</span>

Pozostało 580 znaków

2006-12-30 00:26
0

Po Dispose odwoływać się do wskaźnika? To jak na moje nie podziała... Po prostu przypisz Glowa^.Wsk do Glowa. Bez Dispose.


Program to zbiór zer i jedynek ułożonych tak, żeby denerwować użytkownika.

Pozostało 580 znaków

2006-12-30 00:44
0

Deklaracja twojego typu wskaznik by się przydała... gdy tworzę go według swojej intuicji (by pasował do twojego kodu) to żadne błędy się nie pojawiają.

Pozostało 580 znaków

2006-12-30 01:49
0

no i przydało by się też jak tworzysz listę


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0