From d67d8a2d833eb05e370ebb40e6e77ef4ca5e54c5 Mon Sep 17 00:00:00 2001 From: MrJiaGe <3060669380@qq.com> Date: Wed, 24 Sep 2025 11:32:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=B1=BB=E5=9E=8B=E8=BE=93?= =?UTF-8?q?=E5=85=A5=E9=94=99=E8=AF=AF=E5=AF=BC=E8=87=B4=E7=9A=84bug=20?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=89=93=E5=8D=B0=E6=A0=BC=E5=BC=8F=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CosmeticManager.cpp | 4 ++-- CosmeticManager.h | 2 +- main.cpp | 14 +++++++++++--- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/CosmeticManager.cpp b/CosmeticManager.cpp index 1eea505..42cc832 100644 --- a/CosmeticManager.cpp +++ b/CosmeticManager.cpp @@ -104,11 +104,11 @@ void CosmeticManager::displayAll() const { } } // 查找临期化妆品,小于60天 -void CosmeticManager::displayExpiringCosmetics() const { +void CosmeticManager::displayExpiringCosmetics(int days=60) const { std::string date = Cosmetic::getTime(); for (int i = 0; i < count; ++i) { //这里可以调整判定临期的时间(天) - if (cosmetics[i]->getExpirationDate() < Cosmetic::getTimeAdd(60)) { + if (cosmetics[i]->getExpirationDate() < Cosmetic::getTimeAdd(days)) { std::cout << "品牌: " << cosmetics[i]->getName() << " | 过期日期: " << cosmetics[i]->getExpirationDate() << std::endl; diff --git a/CosmeticManager.h b/CosmeticManager.h index b72a913..59dbe8b 100644 --- a/CosmeticManager.h +++ b/CosmeticManager.h @@ -17,7 +17,7 @@ public: void loadFromFile(); void saveToFile(); void displayAll() const; - void displayExpiringCosmetics() const; // 查找临期化妆品方法 + void displayExpiringCosmetics(int i) const; // 查找临期化妆品方法 bool isValidDate(const std::string &date); private: diff --git a/main.cpp b/main.cpp index 0287ca5..b17ad84 100644 --- a/main.cpp +++ b/main.cpp @@ -14,7 +14,7 @@ void displayMenu() { std::cout << "6. 查找临期化妆品" << std::endl; std::cout << "0. 退出系统" << std::endl; std::cout << "=========================" << std::endl; - std::cout << "请选择操作: "; + std::cout << "请选择操作: " << std::endl; } int main() { @@ -39,6 +39,10 @@ int main() { std::cin >> price; std::cout << "输入类型 (1-国产, 0-进口): "; std::cin >> type; + if (type!=1 && type!=0) { + std::cout << "类型输入错误!请输入1-国产, 0-进口" << std::endl; + break; + } std::cout << "输入过期日期 (YYYY-MM-DD): "; std::cin >> expirationDate; if (!manager.isValidDate(expirationDate)) { @@ -91,9 +95,13 @@ int main() { case 5: manager.displayAll(); break; - case 6: - manager.displayExpiringCosmetics(); + case 6: { + int days; + std::cout << "输入临期天数: "; + std::cin >> days; + manager.displayExpiringCosmetics(days); break; + } case 0: manager.saveToFile(); std::cout << "数据已保存,再见!" << std::endl;