Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma once
- #include "CPU.h"
- #include "Display.h"
- #include "RAM.h"
- #include "Battery.h"
- #include <iostream>
- class Laptop
- {
- private:
- CPU cpu;
- Display display;
- RAM ram;
- Battery battery;
- public:
- Laptop(CPU cpu, Display display, RAM ram, Battery battery)
- {
- this->cpu = cpu;
- this->display = display;
- this->ram = ram;
- this->battery = battery;
- }
- ~Laptop()
- {
- std::cout << "Laptor destructor called" << std::endl;
- }
- Laptop(const Laptop& laptop)
- {
- cpu = laptop.cpu;
- display = laptop.display;
- ram = laptop.ram;
- battery = laptop.battery;
- }
- Laptop& operator =(const Laptop& laptop)
- {
- if (this != &laptop)
- {
- cpu = laptop.cpu;
- display = laptop.display;
- ram = laptop.ram;
- battery = laptop.battery;
- }
- return *this;
- }
- friend std::ostream& operator <<(std::ostream& out, Laptop laptop);
- };
- std::ostream& operator <<(std::ostream& out, Laptop laptop)
- {
- out << "CPU: " << laptop.cpu.getName() << std::endl;
- out << "Display: " << laptop.display.getName() << std::endl;
- out << "Ram: " << laptop.ram.getName() << std::endl;
- out << "Battery: " << laptop.battery.getName() << std::endl;
- return out;
- }
Advertisement
Add Comment
Please, Sign In to add comment