帮我找一份停车场的源码
时间: 2023-08-04 19:08:24 浏览: 107
好的,以下是一个简单的停车场管理系统的C++源码,希望能对您有所帮助:
```cpp
#include <iostream>
#include <string>
#include <vector>
using namespace std;
class Car {
public:
Car(string n, string l) : name(n), license(l) {}
string getName() const { return name; }
string getLicense() const { return license; }
private:
string name;
string license;
};
class ParkingLot {
public:
void park(const Car& car) {
if (isFull()) {
cout << "停车场已满,无法停车!" << endl;
return;
}
cars.push_back(car);
cout << car.getName() << " 停在了停车场中。" << endl;
}
void leave(const Car& car) {
for (auto iter = cars.begin(); iter != cars.end(); iter++) {
if (iter->getLicense() == car.getLicense()) {
cars.erase(iter);
cout << car.getName() << " 离开了停车场。" << endl;
return;
}
}
cout << "没有找到对应的车辆!" << endl;
}
bool isFull() const {
return cars.size() >= capacity;
}
int getAvailableSpace() const {
return capacity - cars.size();
}
private:
vector<Car> cars;
int capacity = 10;
};
int main() {
ParkingLot parkingLot;
Car car1("小白", "浙A12345");
Car car2("小黑", "浙B67890");
Car car3("小红", "浙C24680");
Car car4("小黄", "浙D13579");
parkingLot.park(car1);
parkingLot.park(car2);
parkingLot.park(car3);
parkingLot.park(car4);
parkingLot.leave(car1);
parkingLot.leave(car2);
parkingLot.leave(car3);
parkingLot.leave(car4);
return 0;
}
```
这个停车场管理系统使用了类的概念,包含了车辆类和停车场类。车辆类只包含了车主名字和车牌号,而停车场类则包含了停车、离开、判断是否满车、获取剩余停车位等方法。在主函数中,创建了四辆车,将其停入停车场中并依次离开。