Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno c++ rada

zdravim, neviem si rady s c++:
mam triedu prvok:

private pozx_d
a public metodu pozx, ktora vrati pozx_d.

z tejto triedy mam potomka:

class mravce:public prvok
{
private:
	int pocet_d;
	prvok *mravce_d;
public....nejake metody

z triedy prvok mam aj dalsieho potomka:

class nadprvok: public prvok
{
private:
public:
	virtual void pohni(int pX, int pY);
	void hladaj(mravce *mrav, int *pX, int *pY);...

v triede nadprvok chcem pomocou metody hladaj(v maine ju volam takto: m.hladaj(&mr, &pX,&pY); pricom m je typu nadprvok) najst najblizsi prvok z triedy mravce.
telo hladaj:

void nadprvok::hladaj(mravce *mrav, int *pX,int *pY)
{
	int poc=mrav->pocet();
	...
	int xx;
	for (int i=0;i<poc;i++)
	{
		xx=mrav[i].PozX();
		...
	}
}

toto: xx=mrav[i].PozX(); - zistil som, ze sa mi tam nedava aktualna pozicia(ale udaj, ktory pouziva konstruktor) i-teho mravca....nevie niekto kde je problem? dakujem.
tu je projekt v ms visual studiu:

rapidshare.com/files/107794035/sem.rar
Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Nie je jednoduché odhaliť logickú chybu, ktorá tam niekde je, pretože ten program je veľmi náročný n…
los 16.04.2008 19:10
los
-mravce odvodená z triedy prvok? ...tazko povedat...v skole sme robili nieco podobne a tak som to aj… poslední
Pavol 17.04.2008 21:14
Pavol

Nie je jednoduché odhaliť logickú chybu, ktorá tam niekde je, pretože ten program je veľmi náročný na pochopenie.

Hlavne, že ti to ide, ale zopár otázok na zamyslenie:
- Prečo je trieda mravce odvodená z triedy prvok? Nezdá sa mi, že by sa to tam niekde využívalo a logicky mi to nedáva zmysel.
- Prečo si si zvolil také divné názvy pre triedy, ako sú prvok, nadprvok a mravce? Logickejšie by bolo mravec namiesto prvok, mravenčiar namiesto nadprvok a zoznam mravcov (std::list<mravec> alebo len obyčajné pole) namiesto špeciálnej triedy mravce.

-mravce odvodená z triedy prvok?
...tazko povedat...v skole sme robili nieco podobne a tak som to aj ja tak spravil-v podstate je to tam asi koli zapuzdreniu-takto ovladam vsetky mravce jednym prikazom z mainu a nemusim ich vsetky osobitne(myslim v cykle for) ovladat v maine.

- k tym nazvom....no najrv som si to skusal a ked som mal toho dost napisaneho, uz sa mi to nechcelo robi odznovu.

Zpět do poradny Odpovědět na původní otázku Nahoru