From 99e2e923d0c77b02f3fb4ff648ea916954868606 Mon Sep 17 00:00:00 2001 From: Yuqian Yang Date: Fri, 28 Feb 2025 23:13:39 +0800 Subject: chore(store): move everything to store. --- store/works/life/cpp-practicum/Book.hpp | 51 +++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 store/works/life/cpp-practicum/Book.hpp (limited to 'store/works/life/cpp-practicum/Book.hpp') diff --git a/store/works/life/cpp-practicum/Book.hpp b/store/works/life/cpp-practicum/Book.hpp new file mode 100644 index 0000000..250460f --- /dev/null +++ b/store/works/life/cpp-practicum/Book.hpp @@ -0,0 +1,51 @@ +#pragma once +#include "Base.hpp" + +#include +#include + +class Book final { +public: + Book() = default; + + Book(std::u16string isbn, std::u16string title, std::u16string type, + std::u16string author, std::u16string press, int stock_count) + : isbn_(std::move(isbn)), title_(std::move(title)), + type_(std::move(type)), author_(std::move(author)), + press_(std::move(press)), stock_count_(stock_count) {} + + CRU_DEFAULT_COPY(Book) + CRU_DEFAULT_MOVE(Book) + + ~Book() = default; + +public: + std::u16string GetIsbn() const { return isbn_; } + void SetIsbn(std::u16string isbn) { isbn_ = std::move(isbn); } + + std::u16string GetTitle() const { return title_; } + void SetTitle(std::u16string title) { title_ = std::move(title); } + + std::u16string GetType() const { return type_; } + void SetType(std::u16string type) { type_ = std::move(type); } + + std::u16string GetAuthor() const { return author_; } + void SetAuthor(std::u16string author) { author_ = std::move(author); } + + std::u16string GetPress() const { return press_; } + void SetPress(std::u16string press) { press_ = std::move(press); } + + int GetStockCount() const { return stock_count_; } + void SetStockCount(int stock_count) { stock_count_ = stock_count; } + +private: + std::u16string isbn_; + std::u16string title_; + std::u16string type_; + std::u16string author_; + std::u16string press_; + int stock_count_ = 0; +}; + +QTextStream &operator>>(QTextStream &left, Book &right); +QTextStream &operator<<(QTextStream &left, const Book &right); -- cgit v1.2.3