35657

Untitled

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