From 5624cd9b63bec13fc464a3d7820d703abd8de113 Mon Sep 17 00:00:00 2001 From: Syndamia Date: Sun, 8 Mar 2026 19:54:32 +0200 Subject: feat(Week03): Add solution to first exercise --- Week03/Exercise01/User.cpp | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 Week03/Exercise01/User.cpp (limited to 'Week03/Exercise01/User.cpp') diff --git a/Week03/Exercise01/User.cpp b/Week03/Exercise01/User.cpp new file mode 100644 index 0000000..0dca648 --- /dev/null +++ b/Week03/Exercise01/User.cpp @@ -0,0 +1,33 @@ +#include +#include +#include "User.h" + +void UserArray::add(const User& user) { + if (count >= allocated) { + std::cout << "No more users are allowed!" << std::endl; + return; + } + + users[count++] = user; +} + +User* UserArray::find(char* username) { + for (unsigned i = 0; i < count; ++i) + if (strcmp(username, users[i].name) == 0) + return &users[i]; + return nullptr; +} + +UserArray newUserArray(unsigned allocatedSize) { + UserArray ua; + ua.users = new User[allocatedSize]; + ua.count = 0; + ua.allocated = allocatedSize; + return ua; +} + +void deleteUserArray(UserArray& ua) { + delete[] ua.users; + ua.users = nullptr; + ua.count = ua.allocated = 0; +} -- cgit v1.3.1-23-gd82d