Otóż implementuję sobie( a przynajmniej próbuje)grę planszową. Powiedzmy że mam sobie klasę bazową: plansza.
[CODE]
class plansza
{
public:
int danePola;
plansza* next;
int numerPola;
void Dodaj (plansza* &head, int numer, int dane);
void petla(plansza* head);
};
[/CODE]
zawierającą pola do obsługi listy jak widać. Tutaj niby wszytsko chyba gra.
Natomiast w klasie pochodnej: gracz mam coś takiego
[CODE]
class gracz:public plansza
{
public:
gracz(plansza* head)
{
iluGraczy=0; //to nie ważne
nieb=head;
zolty=head;
ziel=head;
czer=head;
for(int i=0; i<4; i++){ kapital[i]=0; } //to też nie ważne
}
plansza* czer;
plansza* nieb;
plansza* zolty;
plansza* ziel;
}
[/CODE]
deklaruje tu cztery wskaźniki:czer, nieb, zolty, ziel do poruszania się po mojej liście. W konstruktorze ustawiam je na poczatku listy.
I teraz gdy w jakiejś metodzie próbuje wywołać np. taką linijkę
[CODE]
if(ustaw==1)czer=czer->next; //chcę przesunąć mój wskaźnik na następne pole
[/CODE]
program przerywa działanie i wywala się takie coś jak w temacie. Domniemam że coś z rezerwacją pamięci jest nie tak. Może ktoś podpowiedzieć co skopałem?