Advertisement
Guest User

Untitled

a guest
Jan 18th, 2020
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.69 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4. class zwierze {
  5. string mimie;
  6. public:
  7. zwierze(string mimie);
  8. void ustawimie(string mimie);
  9. const string &naLancuch();
  10. virtual string dajRodzajZwierzecia(){
  11. return "zwierzatko";
  12. }
  13.  
  14. };
  15.  
  16. class Pies : public zwierze{
  17. public:
  18. Pies(string name) : zwierze(name){}
  19. void szczekaj(){
  20. cout << "hau hau" << endl;
  21. }
  22. void dajLape(){
  23. cout << "pies podaje lape" << endl;
  24. }
  25. };
  26.  
  27. zwierze::zwierze(string mimie){
  28. this->mimie=mimie;
  29. }
  30.  
  31.  
  32. void zwierze::ustawimie(string imie){
  33. mimie=imie;
  34. }
  35.  
  36.  
  37. const string &zwierze::naLancuch(){
  38.  
  39. return mimie;
  40. }
  41.  
  42. bool porownaj(zwierze z1, zwierze z2){
  43. if(z2.naLancuch()==z1.naLancuch()){
  44. return true;
  45. }
  46. else{
  47. return false;
  48. }
  49. }
  50.  
  51.  
  52. int main(){
  53. Pies obiektPies("burek");
  54. cout << obiektPies.naLancuch() << endl;
  55. zwierze zwierze1("yeti");
  56. zwierze& refZwierze = zwierze1;
  57. zwierze& refPies = obiektPies;
  58. zwierze* wskZwierze;
  59. zwierze* wskPies;
  60. wskZwierze = &zwierze1;
  61. wskPies = &obiektPies;
  62. cout << wskZwierze ->naLancuch();
  63. cout << wskPies->naLancuch();
  64. Pies * wskPies2 = dynamic_cast<Pies*>(wskZwierze);
  65. Pies * wskPies3 = dynamic_cast<Pies*>(wskPies);
  66. if(wskPies2!=NULL){
  67. cout << wskPies2->naLancuch();
  68. }else{
  69. cout << "nieprawidlowy typ" << endl;
  70. }
  71. if(wskPies3!=NULL){
  72. cout << wskPies3->naLancuch();
  73. }else{
  74. cout << "nieprawidlowy typ" << endl;
  75. }
  76. Pies& refPies2 = dynamicz_cast<Pies*>(zwierze);
  77. Pies& refPies3; //tu nie dokonczyl
  78. return 0;
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement