Slavik9510

Untitled

Oct 6th, 2022
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.16 KB | None | 0 0
  1. #pragma once
  2. #include "CPU.h"
  3. #include "Display.h"
  4. #include "RAM.h"
  5. #include "Battery.h"
  6. #include <iostream>
  7. class Laptop
  8. {
  9. private:
  10.     CPU cpu;
  11.     Display display;
  12.     RAM ram;
  13.     Battery battery;
  14. public:
  15.     Laptop(CPU cpu, Display display, RAM ram, Battery battery)
  16.     {
  17.         this->cpu = cpu;
  18.         this->display = display;
  19.         this->ram = ram;
  20.         this->battery = battery;
  21.     }
  22.     ~Laptop()
  23.     {
  24.         std::cout << "Laptor destructor called" << std::endl;
  25.     }
  26.     Laptop(const Laptop& laptop)
  27.     {
  28.         cpu = laptop.cpu;
  29.         display = laptop.display;
  30.         ram = laptop.ram;
  31.         battery = laptop.battery;
  32.     }
  33.     Laptop& operator =(const Laptop& laptop)
  34.     {
  35.         if (this != &laptop)
  36.         {
  37.             cpu = laptop.cpu;
  38.             display = laptop.display;
  39.             ram = laptop.ram;
  40.             battery = laptop.battery;
  41.         }
  42.         return *this;
  43.     }
  44.     friend std::ostream& operator <<(std::ostream& out, Laptop laptop);
  45. };
  46.  
  47. std::ostream& operator <<(std::ostream& out, Laptop laptop)
  48. {
  49.     out << "CPU: " << laptop.cpu.getName() << std::endl;
  50.     out << "Display: " << laptop.display.getName() << std::endl;
  51.     out << "Ram: " << laptop.ram.getName() << std::endl;
  52.     out << "Battery: " << laptop.battery.getName() << std::endl;
  53.     return out;
  54. }
Advertisement
Add Comment
Please, Sign In to add comment