Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdint>
- #include <iostream>
- #include "employees.h"
- EmployeesArray::EmployeesArray() {
- _size = 0;
- _capacity = 2; //16
- _employees = new Employee*[_capacity];
- };
- EmployeesArray::EmployeesArray(const EmployeesArray &other) {
- _size = other._size;
- _capacity = other._capacity;
- _employees = other._employees;
- };
- EmployeesArray::~EmployeesArray() {
- delete[] _employees;
- };
- void EmployeesArray::add(const Employee *e) { //const
- _size++;
- if (_size <= _capacity) {
- _employees[_size-1] = e;
- return;
- };
- int new_capacity = 2*_capacity;
- Employee **new_employees = new Employee*[new_capacity];
- for (int i = 0; i < _capacity; i++) {
- new_employees[i] = _employees[i];
- }
- delete[] _employees;
- _employees = new_employees;
- _capacity = new_capacity;
- _employees[_size-1] = e;
- };
- EmployeesArray& EmployeesArray::operator=(EmployeesArray &other) {
- std::swap(this->_size, other._size);
- std::swap(this->_capacity, other._capacity);
- std::swap(this->_employees, other._employees);
- return *this;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement