Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- class zwierze {
- string mimie;
- public:
- zwierze(string mimie);
- void ustawimie(string mimie);
- const string &naLancuch();
- virtual string dajRodzajZwierzecia(){
- return "zwierzatko";
- }
- };
- class Pies : public zwierze{
- public:
- Pies(string name) : zwierze(name){}
- void szczekaj(){
- cout << "hau hau" << endl;
- }
- void dajLape(){
- cout << "pies podaje lape" << endl;
- }
- };
- zwierze::zwierze(string mimie){
- this->mimie=mimie;
- }
- void zwierze::ustawimie(string imie){
- mimie=imie;
- }
- const string &zwierze::naLancuch(){
- return mimie;
- }
- bool porownaj(zwierze z1, zwierze z2){
- if(z2.naLancuch()==z1.naLancuch()){
- return true;
- }
- else{
- return false;
- }
- }
- int main(){
- Pies obiektPies("burek");
- cout << obiektPies.naLancuch() << endl;
- zwierze zwierze1("yeti");
- zwierze& refZwierze = zwierze1;
- zwierze& refPies = obiektPies;
- zwierze* wskZwierze;
- zwierze* wskPies;
- wskZwierze = &zwierze1;
- wskPies = &obiektPies;
- cout << wskZwierze ->naLancuch();
- cout << wskPies->naLancuch();
- Pies * wskPies2 = dynamic_cast<Pies*>(wskZwierze);
- Pies * wskPies3 = dynamic_cast<Pies*>(wskPies);
- if(wskPies2!=NULL){
- cout << wskPies2->naLancuch();
- }else{
- cout << "nieprawidlowy typ" << endl;
- }
- if(wskPies3!=NULL){
- cout << wskPies3->naLancuch();
- }else{
- cout << "nieprawidlowy typ" << endl;
- }
- Pies& refPies2 = dynamicz_cast<Pies*>(zwierze);
- Pies& refPies3; //tu nie dokonczyl
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement