Website Summary Files Commits Branches @commit @diff @stats
path: root / Sem. 11 / example / Person.h
diff options
context:
space:
mode:
1 files changed, 35 insertions, 0 deletions
-rw-r--r--Sem. 11/example/Person.h35
diff --git a/Sem. 11/example/Person.h b/Sem. 11/example/Person.h
new file mode 100644
index 0000000..9a404c4
--- /dev/null
+++ b/Sem. 11/example/Person.h
@@ -0,0 +1,35 @@
+#pragma once
+
+class Person
+{
+public:
+ Person();
+ Person(const char* name, int age);
+
+ Person(const Person& other);
+
+ Person(Person&& other); //move constr
+
+ Person& operator=(Person&& other); // move op=
+
+ Person& operator=(const Person& other);
+ ~Person();
+
+ void setName(const char* name);
+ void setAge(int age);
+
+ const char* getName() const;
+ int getAge() const;
+
+ void print();
+
+
+private:
+
+ void copyFrom(const Person& other);
+ void free();
+
+
+ char* name;
+ int age;
+}; \ No newline at end of file