[ Ramirez @ 28.04.2004. 13:15 ] @
dakle ovo je klasa "skup" i metoda koja proverava da li se neka cifra nalazi u skupu i metoda koja dodaje neku cifru u skup (pod uslovom da se ona vec ne nalazi u njemu)... zanemarite nedostatak konstruktora destruktora i svega ostalog..... Code: //header.h class Skup { int *niz, duz; public: bool operator% (int b) const; Skup& operator+= (int b); }; //methods.cpp bool Skup::operator% (int b) const { for (int i=0; i<duz; i++) if (niz[i] == b) return true; return false; } Skup& Skup::operator+= (int b) { if (! (*this % b)) { int *n = new int [duz+1]; for (int i=0; i<duz; i++) n[i] = niz[i]; n[duz++] = b; delete [] niz; niz = n; } return *this; } mene zanima sledece: 1. zasto postoji ono const u definiciji operatora % ??? 2. zar ne postoji bolji nacin za realociranje memorije.... jer sve sto treba da se uradi je da se alocira jos jedno mesto na kraju niza a da se vrednosti sacuvaju. Prosto mi je neverovatno da ne to ne moze da se uradi na laksi nacin??? |