diff options
feat(Week03): Add solution to first exercise
1 files changed, 33 insertions, 0 deletions
| -rw-r--r-- | Week03/Exercise01/User.cpp | 33 |
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 <iostream> +#include <cstring> +#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; +} |
