用 C++ 来编写超市订单系统,功能包括修改订单号,修改商品名称,修改商品单价,修改商品数量,修改收件人姓名,删除订单
时间: 2024-06-08 13:05:12 浏览: 51
好的,我可以为您提供一个简单的超市订单系统的代码框架,您可以在此基础上进行修改和完善。以下是代码示例:
```cpp
#include <iostream>
#include <vector>
using namespace std;
struct Order {
int id; // 订单号
string name; // 商品名称
double price; // 商品单价
int quantity; // 商品数量
string recipient; // 收件人姓名
};
class Supermarket {
public:
// 添加订单
void addOrder(const Order& order) {
orders_.push_back(order);
}
// 修改订单号
void modifyOrderId(int oldId, int newId) {
for (auto& order : orders_) {
if (order.id == oldId) {
order.id = newId;
break;
}
}
}
// 修改商品名称
void modifyOrderName(int orderId, const string& newName) {
for (auto& order : orders_) {
if (order.id == orderId) {
order.name = newName;
break;
}
}
}
// 修改商品单价
void modifyOrderPrice(int orderId, double newPrice) {
for (auto& order : orders_) {
if (order.id == orderId) {
order.price = newPrice;
break;
}
}
}
// 修改商品数量
void modifyOrderQuantity(int orderId, int newQuantity) {
for (auto& order : orders_) {
if (order.id == orderId) {
order.quantity = newQuantity;
break;
}
}
}
// 修改收件人姓名
void modifyOrderRecipient(int orderId, const string& newRecipient) {
for (auto& order : orders_) {
if (order.id == orderId) {
order.recipient = newRecipient;
break;
}
}
}
// 删除订单
void deleteOrder(int orderId) {
for (auto it = orders_.begin(); it != orders_.end(); ++it) {
if (it->id == orderId) {
orders_.erase(it);
break;
}
}
}
private:
vector<Order> orders_; // 存储订单
};
int main() {
// 初始化订单系统
Supermarket supermarket;
// 添加订单
Order order1{ 1, "商品1", 10.0, 2, "收件人1" };
Order order2{ 2, "商品2", 20.0, 3, "收件人2" };
supermarket.addOrder(order1);
supermarket.addOrder(order2);
// 修改订单
supermarket.modifyOrderId(1, 3);
supermarket.modifyOrderName(2, "商品3");
supermarket.modifyOrderPrice(3, 30.0);
supermarket.modifyOrderQuantity(3, 4);
supermarket.modifyOrderRecipient(2, "收件人3");
// 删除订单
supermarket.deleteOrder(3);
return 0;
}
```
在此代码框架中,我们定义了 `Order` 结构体来存储订单信息,包括订单号、商品名称、商品单价、商品数量和收件人姓名。我们使用 `vector` 容器来存储所有订单,并定义了相应的函数来实现订单的添加、修改和删除等功能。
您可以根据实际需求对代码进行修改和完善,例如添加查找订单、按照不同条件排序等功能。同时,请注意在实际开发中需要考虑数据的安全性和完整性,例如对用户输入进行合法性检查和异常处理等。
阅读全文