c++实现的停车场管理系统
时间: 2023-10-30 20:09:57 浏览: 280
停车场管理系统是一个典型的面向对象的项目。我们可以使用C++来实现它。下面是一个简单的停车场管理系统的设计:
1.定义车辆类
```cpp
class Vehicle {
private:
string licenseNumber; // 车牌号
int timeIn; // 进入时间
public:
Vehicle(string license, int time) {
licenseNumber = license;
timeIn = time;
}
string getLicenseNumber() {
return licenseNumber;
}
int getTimeIn() {
return timeIn;
}
};
```
2.定义停车场类
```cpp
class ParkingLot {
private:
vector<Vehicle*> vehicles; // 存储所有车辆
int capacity; // 停车场容量
public:
ParkingLot(int cap) {
capacity = cap;
}
bool isFull() {
return vehicles.size() >= capacity;
}
bool park(Vehicle* v) {
if (isFull()) {
return false;
}
vehicles.push_back(v);
return true;
}
int leave(string license, int timeOut) {
for (int i = 0; i < vehicles.size(); i++) {
if (vehicles[i]->getLicenseNumber() == license) {
int timeIn = vehicles[i]->getTimeIn();
int cost = (timeOut - timeIn) * 10; // 按时间收费
vehicles.erase(vehicles.begin() + i);
return cost;
}
}
return -1; // 找不到对应车辆
}
};
```
3.测试程序
```cpp
int main() {
ParkingLot lot(10);
Vehicle* v1 = new Vehicle("A12345", 8);
Vehicle* v2 = new Vehicle("B54321", 10);
lot.park(v1);
lot.park(v2);
int cost = lot.leave("A12345", 12);
cout << "Cost: " << cost << endl;
return 0;
}
```
这是一个简单的停车场管理系统,可以根据实际需求进行扩展。
阅读全文