From 4993c6468aa07e7c6a006a721fe82aaa4413eede Mon Sep 17 00:00:00 2001 From: angeld55 Date: Tue, 17 May 2022 20:42:42 +0300 Subject: added bar task --- Sem. 11/Examples/Person/Person.cpp | 78 -------------------------------------- Sem. 11/Examples/Person/Person.h | 27 ------------- 2 files changed, 105 deletions(-) delete mode 100644 Sem. 11/Examples/Person/Person.cpp delete mode 100644 Sem. 11/Examples/Person/Person.h (limited to 'Sem. 11/Examples/Person') diff --git a/Sem. 11/Examples/Person/Person.cpp b/Sem. 11/Examples/Person/Person.cpp deleted file mode 100644 index 439dc2b..0000000 --- a/Sem. 11/Examples/Person/Person.cpp +++ /dev/null @@ -1,78 +0,0 @@ -#pragma once -#include "Person.h" -#include -#pragma warning (disable:4996) - - - -void Person::copyFrom(const Person& other) -{ - name = new char[strlen(other.name) + 1]; - strcpy(name, other.name); - age = other.age; -} - -void Person::free() -{ - delete[] name; -} - -Person::Person(const char* name, int age) -{ - setName(name); - setAge(age); -} - -Person::Person(const Person& other) -{ - copyFrom(other); -} - -Person& Person::operator=(const Person& other) -{ - if (this != &other) - { - free(); - copyFrom(other); - } - return *this; -} -const char* Person::getName() const -{ - return name; -} - -int Person::getAge() const -{ - return age; -} - -void Person::setName(const char* name) -{ - if (name == nullptr || this->name == name) - return; - - delete[] this->name; - size_t nameLen = strlen(name); - this->name = new char[nameLen + 1]; - strcpy(this->name, name); -} - -void Person::setAge(int age) -{ - if(age < 0 || age > 120) - age = 40; - this->age = age; -} - - -Person::~Person() -{ - free(); -} - -void Person::print() const -{ - std::cout << name << " " << age << std::endl; -} - diff --git a/Sem. 11/Examples/Person/Person.h b/Sem. 11/Examples/Person/Person.h deleted file mode 100644 index 826b671..0000000 --- a/Sem. 11/Examples/Person/Person.h +++ /dev/null @@ -1,27 +0,0 @@ -#pragma once -#include -class Person -{ - char* name = nullptr; - int age = 0; - - void copyFrom(const Person& other); - void free(); - -public: - Person() = default; - Person(const char* name, int age); - - Person(const Person& other); - Person& operator=(const Person& other); - - const char* getName() const; - int getAge() const; - - ~Person(); - void print() const; - -protected: - void setName(const char* name); - void setAge(int age); -}; -- cgit v1.3.1-23-gd82d