int main  ) 
 

Definicja w linii 66 pliku zad_6_r15.cpp.

00067 {
00068     Rodent (* tab_wsk_o_R[4]);               //tworzymy tablice wskaznikow na obiekty klasy Rodent
00069     tab_wsk_o_R[0]=new Mouse;                 //tworzymy nowy obiekt i wstawiamy wskaznik na niego do wczesniej utworzonej tablicy
00070     tab_wsk_o_R[1]=new Gerbil;                //j.w
00071     tab_wsk_o_R[2]=new Hamster;               //jw.
00072     //tab_wsk_o_R[3]=new Rodent;              //nie mozemy utworzyc obiektu klasy Rodent, poniewaz jest to klasa abstrakcyjna - metoda zyje() jest czysto wirtualna!
00073     cout<<"Mysz:"<<endl;                      
00074     tab_wsk_o_R[0]->zyje();                   //wywolujemy funkcje z pierwszego 
00075     tab_wsk_o_R[0]->ludzie();
00076     tab_wsk_o_R[0]->ile_lap();
00077     cout<<"Myszoskoczek:"<<endl;
00078     tab_wsk_o_R[1]->zyje();
00079     tab_wsk_o_R[1]->ludzie();
00080     tab_wsk_o_R[1]->ile_lap();
00081     cout<<"Chomik:"<<endl;
00082     tab_wsk_o_R[2]->zyje();
00083     tab_wsk_o_R[2]->ludzie();
00084     tab_wsk_o_R[2]->ile_lap();
00085     cout<<endl<<endl;
00086     
00087     Rodent* a=new Hamster;                    //wywoluje tylko destruktor z klasy glownej (tj. Rodent) jesli destruktor jest niewirtualny
00088     delete a;                                 //jesli destruktor jest wirtualny, wysolane zostana destruktory z klasy Hamster oraz Rodent
00089     
00090     //for(int i=0;i<3;i++)                    //usuwamy wszyskie utworzone obiekty z tablicy tab_wsk_o_R
00091     //{
00092     //delete tab_wsk_o_R[i];
00093     //}
00094     system("pause");
00095     return 0;
00096 }


Wygenerowano Tue Jun 27 19:36:04 2006 dla DL programowanie, zadania 6, 9, 10 z rozdzialu 15 ksiazki Thinking in C++ programem  doxygen 1.4.6-NO