Uzupełnij program o brakujące elementy NIE MODYFIKUJAC funkcji MAIN() i wyswietlInfo( );
// IloscWszystkichDotychczasStworzonych( ) - zwraca zliczoną ilosc wszystkich dotychczas stworzonych
// (to tego miejsca w kodzie) obiektów klasy Pkt (mogą juz nie istniec);
//
// IloscAktywnychObiektow( ) - zwraca aktualna (do tego miejsca w kodzie) aktywnych (tj nie skasowanych)
// ilosc obiektow klasy Pkt; class Pkt{
private:
static unsigned int
m_uIloscWszystkich;
static unsigned int
m_uIloscAktywnych;
public:
float X, Y
public:
Pkt( ){
++m_uIloscWszystkich;
++m_uIloscAktywnych;
// uzpełnic
}
~Pkt(){
--m_uIloscAktywnych;
}
// uzpełnic
};
// uzpełnic
void wyswietlInfoPkt( ){
cout << "Dotychczas stworzono obiektow Pkt = " << Pkt::IloscWszystkichDotychczasStworzonych( ) << endl;
cout << "Ilosc stworzonych aktualnie aktywnych Pkt = " << Pkt::IloscAktywnychObiektow( ) << endl;
}
int main(){
Pkt
A(-2.0f,2), B, C(2,2.0f), D(0,4); Pkt
X(D), X2(B);
Pkt
X1(&A), X3(&B);
wyswietlInfoPkt( ); Odcinek
ab(A,B), bc(B,C), cd(C,D), da(D,A), ca(C,A), ac(A,C); Odcinek
xb(X,B);
wyswietlInfoPkt( );
Trojkat
f1(ab, bc, ca);
Trojkat
f2(ac, cd, da);
wyswietlInfoPkt( ); Pkt* tabPkt = new Pkt[100]; wyswietlInfoPkt( ); delete [] tabPkt; wyswietlInfoPkt( );
float
pole = f1.pole() + f2.pole(); float
dl = xb.dlugosc();
cout << "Suma pol wynosi = " << pole << endl; cout << "Dlugosc wynosi = " << dl << endl; return 0;
}