Hej, mam problem z warunkiem, program wywala sie kiedy dojdzie do tej petli i niestety nie potrafie znalezc bledu. Program na chwile obecna robiony bez getterow i setterow. Dokladniej chodzi mi o to miejsce:
while((*szukacz).nast!=NULL)
{
szukacz=(*szukacz).nast;
}
(*szukacz).nast=new Box(wiersz);
#include "egzamin.h"
#include<iostream>
#include<string>
#include<fstream>
using namespace std;
egzamin::egzamin()
{
pocz=NULL;
ile=0;
};
egzamin::~egzamin()
{
Box *killer;
while(pocz!=NULL)
{
killer=pocz;
pocz=(*killer).nast;
delete killer;
}
};
void egzamin::pobierz()
{
ifstream plik;
plik.open("C:\Ja\STUDIA\c++\Sesja\1\konta.txt");
plik.open("konta.txt", ios::in | ios::out);
if( plik.good()==true )
{
Box *szukacz;
szukacz=pocz;
string wiersz;
while (!plik.eof())
{
getline(plik,wiersz);
if(pocz==NULL)
{
pocz=new Box(wiersz);
}
else
{
while((*szukacz).nast!=NULL)
{
szukacz=(*szukacz).nast;
}
(*szukacz).nast=new Box(wiersz);
}
}
}
else
{
cout << "BLAD PLIKU";
}
};
#ifndef EGZAMIN_H_INCLUDED
#define EGZAMIN_H_INCLUDED
using namespace std;
#include<string>
struct egzamin{
struct Box{
string numer;
Box *nast;
Box(string n,Box *adres=NULL)
{
numer=n;
nast=adres;
}
};
Box *pocz;
int ile;
egzamin();
~egzamin();
void pobierz();
};
#endif // EGZAMIN_H_INCLUDED