diff options
feat(Week07): Add solutions
1 files changed, 45 insertions, 0 deletions
| -rw-r--r-- | Week07/Exercise01/User.h | 45 |
diff --git a/Week07/Exercise01/User.h b/Week07/Exercise01/User.h new file mode 100644 index 0000000..7e04560 --- /dev/null +++ b/Week07/Exercise01/User.h @@ -0,0 +1,45 @@ +#ifndef _USER +#define _USER + +#include "String.h" +#include "Book.h" + +class User { + String email; + String password; + unsigned bankCard; + + // Масив от указатели към книги + const Book** library; + unsigned libraryCount; + unsigned libraryAlloc; + + void copyFrom(const User& other); + void free(); + + void resizeLibrary(); + +public: + User(); + ~User(); + User(const User& other); + User& operator=(const User& other); + User(User&& other); + User& operator=(User&& other); + + void SetEmail(const String& newEmail); + const String& GetEmail() const; + + void SetPassword(const String& newPassword); + + bool Login(const String& email, const String& password); + + void AddBookToLibrary(const Book* book); + void ListLibrary(); + const Book* GetBook(unsigned index) const; + + void SetBankCard(unsigned newBankCard); + unsigned GetBankCard() const; +}; + +#endif /* _USER */ |
