aboutsummaryrefslogtreecommitdiff
path: root/week13/Exercise3/Thread.h
diff options
context:
space:
mode:
authorSyndamia <kamen@syndamia.com>2024-05-25 16:08:17 +0300
committerSyndamia <kamen@syndamia.com>2024-05-25 16:08:17 +0300
commit9c11fababb9b6b194e646fbeb62d141aacf74c43 (patch)
treef1a294fcd66b22463b9424c838ff171db8539a15 /week13/Exercise3/Thread.h
parentc6fae5f1a0cc8394b1de3b671f07de7b3d677c59 (diff)
downloadoop-2023-solutions-9c11fababb9b6b194e646fbeb62d141aacf74c43.tar
oop-2023-solutions-9c11fababb9b6b194e646fbeb62d141aacf74c43.tar.gz
oop-2023-solutions-9c11fababb9b6b194e646fbeb62d141aacf74c43.zip
[w13] Added solutions
Diffstat (limited to 'week13/Exercise3/Thread.h')
-rw-r--r--week13/Exercise3/Thread.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/week13/Exercise3/Thread.h b/week13/Exercise3/Thread.h
new file mode 100644
index 0000000..3b0a588
--- /dev/null
+++ b/week13/Exercise3/Thread.h
@@ -0,0 +1,25 @@
+#pragma once
+#include "User.h"
+
+class Thread {
+ char** messages;
+ unsigned size;
+ unsigned allocated;
+
+ void resize();
+
+ void free();
+ void copyFrom(const Thread& other);
+
+public:
+ Thread();
+ virtual ~Thread();
+ Thread(const Thread& other);
+ Thread& operator=(const Thread& other);
+ Thread(Thread&& other);
+ Thread& operator=(Thread&& other);
+
+ void PostMessage(const User& poster, const char* message);
+
+ friend class ThreadModerator;
+};