diff options
clean up
1 files changed, 0 insertions, 69 deletions
| -rw-r--r-- | Sem. 07/PersonAdvanced/PersonAdvanced.cpp | 69 |
diff --git a/Sem. 07/PersonAdvanced/PersonAdvanced.cpp b/Sem. 07/PersonAdvanced/PersonAdvanced.cpp deleted file mode 100644 index e4e062f..0000000 --- a/Sem. 07/PersonAdvanced/PersonAdvanced.cpp +++ /dev/null @@ -1,69 +0,0 @@ -#include "PersonAdvanced.h" -#include <iostream> - -PersonAdvanced::PersonAdvanced(const char* name, int age) : name(nullptr), age(age) -{ - setName(name); - setAge(age); -} - -PersonAdvanced::PersonAdvanced(const PersonAdvanced& other) -{ - copyFrom(other); -} - -PersonAdvanced& PersonAdvanced::operator = (const PersonAdvanced& other) -{ - if (this != &other) - { - free(); - copyFrom(other); - } - return *this; -} -PersonAdvanced::~PersonAdvanced() -{ - free(); -} - -const char* PersonAdvanced::getName() const -{ - return name; -} - -int PersonAdvanced::getAge() const -{ - return age; -} - -void PersonAdvanced::setName(const char* name) -{ - delete[] this->name; - this->name = new char[strlen(name) + 1]; - strcpy(this->name, name); -} -void PersonAdvanced::setAge(int age) -{ - if (age < 0 || age > 120) - age = 40; - this->age = age; -} - - -void PersonAdvanced::copyFrom(const PersonAdvanced& other) -{ - name = new char[strlen(other.name) + 1]; - strcpy(name, other.name); - - age = other.age; -} -void PersonAdvanced::free() -{ - delete[] name; - age = 0; -} - -void PersonAdvanced::print() -{ - std::cout <<"Name: "<< name << ", age: " << age << std::endl; -}
\ No newline at end of file |
