Summary Files Commits Branches @commit @diff @stats
path: root / Year 1 / Object-oriented Programming / Solutions Sem. 08 / ex3 / DynStr.cpp
diff options
context:
space:
mode:
Commit1e4762258f3e2d7db1045f3034e870f84cea7977 (patch)
Author
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-04-15 09:44:49 +0300
Committer
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-04-15 09:44:49 +0300
Filesfe597b9edc741b3d31968b10438a772168bcc3e1 /Year 1/Object-oriented Programming/Solutions Sem. 08/ex3/DynStr.cpp
uni-projects-1e4762258f3e2d7db1045f3034e870f84cea7977.tar
uni-projects-1e4762258f3e2d7db1045f3034e870f84cea7977.tar.gz
uni-projects-1e4762258f3e2d7db1045f3034e870f84cea7977.zip
Parentf522aaa802e4641118c3ce56f47f0115a36cdb13 (diff)
Moved compare to DynStr
1 files changed, 8 insertions, 0 deletions
-rw-r--r--Year 1/Object-oriented Programming/Solutions Sem. 08/ex3/DynStr.cpp8
diff --git a/Year 1/Object-oriented Programming/Solutions Sem. 08/ex3/DynStr.cpp b/Year 1/Object-oriented Programming/Solutions Sem. 08/ex3/DynStr.cpp
index bac5c83..97a2fb4 100644
--- a/Year 1/Object-oriented Programming/Solutions Sem. 08/ex3/DynStr.cpp
+++ b/Year 1/Object-oriented Programming/Solutions Sem. 08/ex3/DynStr.cpp
@@ -48,3 +48,11 @@ DynStr::~DynStr() {
const char* DynStr::get_str() const {
return str;
}
+
+int DynStr::compare(const char* other) const {
+ int cmp = strcmp(str, other);
+ // On some compilers (gcc) strcmp returns the difference, but we want it to return -1, 0 or 1
+ if (cmp > 1) cmp = 1;
+ else if (cmp < -1) cmp = -1;
+ return cmp;
+}