Inheritance in C++web.mst.edu/~ricardom/CS1575/19.3/lectureNotes/11... · Inheritance in C++...
Transcript of Inheritance in C++web.mst.edu/~ricardom/CS1575/19.3/lectureNotes/11... · Inheritance in C++...
![Page 1: Inheritance in C++web.mst.edu/~ricardom/CS1575/19.3/lectureNotes/11... · Inheritance in C++ Wednesday, October 9, 2019 5:35 PM Data Structures Page 1 . void myFunction( Dog& d )](https://reader035.fdocuments.net/reader035/viewer/2022071217/60492c6767b6a37a31144bf1/html5/thumbnails/1.jpg)
class Dog{ int x;public: int y; void bark();}
class Pug : public Dog{public: int z; void snore();}
Dog fido;Pug jeff;
Inheritance in C++Wednesday, October 9, 2019 5:35 PM
Data Structures Page 1
![Page 2: Inheritance in C++web.mst.edu/~ricardom/CS1575/19.3/lectureNotes/11... · Inheritance in C++ Wednesday, October 9, 2019 5:35 PM Data Structures Page 1 . void myFunction( Dog& d )](https://reader035.fdocuments.net/reader035/viewer/2022071217/60492c6767b6a37a31144bf1/html5/thumbnails/2.jpg)
void myFunction( Dog& d ){ …}
myFunction( jeff );
Dog *p = &jeff;
Dog larry( jeff );fido = jeff;
jeff = larry;
class Dog{ int x;public: int y; void bark() { cout << "Woof!";}}
class Pug : public Dog{public: int z; void snore(); void bark() { cout << "puff!";}}
Pug tim;tim.bark();
tim.Dog::bark();
Data Structures Page 2
![Page 3: Inheritance in C++web.mst.edu/~ricardom/CS1575/19.3/lectureNotes/11... · Inheritance in C++ Wednesday, October 9, 2019 5:35 PM Data Structures Page 1 . void myFunction( Dog& d )](https://reader035.fdocuments.net/reader035/viewer/2022071217/60492c6767b6a37a31144bf1/html5/thumbnails/3.jpg)
class Dog{protected: int x;public: int y; void bark();}
class Pug : public Dog{public: int z; void snore(){ x = 3; }}
class Alpha{ int x, y; Alpha() : x(0), y(0) {} Alpha(int a, int b) : x(a), y(b) {}}
class Beta : public Alpha{ int z; Beta() : Alpha(1, 1), z(1) {}}
class Gamma : public Beta{ int w; Gamma() : w(0) {}}
Data Structures Page 3
![Page 4: Inheritance in C++web.mst.edu/~ricardom/CS1575/19.3/lectureNotes/11... · Inheritance in C++ Wednesday, October 9, 2019 5:35 PM Data Structures Page 1 . void myFunction( Dog& d )](https://reader035.fdocuments.net/reader035/viewer/2022071217/60492c6767b6a37a31144bf1/html5/thumbnails/4.jpg)
}
class Alpha{ int *p; ~Alpha() { delete [] p;}}
class Beta : public Alpha{ string *z; ~Beta() { delete z }}
class Gamma : public Beta{ char *w; ~Gamma { delete w }}
Data Structures Page 4