35657

Untitled

Jul 14th, 2023
993
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.60 KB | None | 0 0
  1.  
  2. #include <string>
  3. #include <iostream>
  4.  
  5. using namespace std;
  6.  
  7. //млекопитающее
  8. class Mammal {
  9. public:
  10.     void SetGender(string gender) {
  11.         gender_ = gender;
  12.     }
  13.  
  14.     void SetAge(int age) {
  15.         age_ = age;
  16.     }
  17.  
  18.     int GetAge() const {
  19.         return age_;
  20.     }
  21.     string GetGender() const {
  22.         return gender_;
  23.     }
  24.  
  25.     void SetWeight(int weight) {
  26.         weight_ = weight;
  27.     }
  28.  
  29.     int GetWeight() {
  30.         return weight_;
  31.     }
  32.  
  33.     void SetHeight(int height) {
  34.         height_ = height;
  35.     }
  36.  
  37.     int GetHeight() {
  38.         return height_;
  39.     }
  40.  
  41. private:
  42.     string gender_;
  43.     int age_;
  44.     int weight_;
  45.     int height_;
  46. };
  47.  
  48.  
  49. // Человек
  50. class Person : public virtual Mammal {
  51.  
  52. public:
  53.  
  54.     void SetName(string name) {
  55.         name_ = name;
  56.     }
  57.  
  58.     string GetName() const {
  59.         return name_;
  60.     }
  61.  
  62.     virtual void Speak() {
  63.         cout << "Привет!" << endl;
  64.     }
  65.  
  66. private:
  67.     string name_;
  68. };
  69.  
  70.  
  71. class Wolf : public virtual Mammal {
  72.  
  73. public:
  74.  
  75.     void SetColour(string colour) {
  76.         colour_ = colour;
  77.     }
  78.  
  79.     string GetColour() {
  80.         return colour_;
  81.     }
  82.  
  83. private:
  84.     string colour_;
  85. };
  86.  
  87.  
  88. class Warewolf : public Person, public Wolf {
  89. public:
  90.     void Speak() override {
  91.         cout << "У-у-у-у-у-у!" << endl;
  92.     }
  93. };
  94.  
  95.  
  96. int main() {
  97.     setlocale(LC_ALL, "ru");
  98.  
  99.     Warewolf wf;
  100.  
  101.     wf.SetName("John");
  102.     wf.SetColour("Gray");
  103.     wf.SetAge(10);
  104.     cout << wf.GetName() << " " << wf.GetColour() << " " << wf.GetAge() << endl;
  105.     wf.Speak();
  106. }
Advertisement
Add Comment
Please, Sign In to add comment