Я работаю над проблемой: «Напишите программу для работы с кафе. Пользователь может добавлять новые заказы, обслуживать заказы (метод FIFO) и получать текущих ожидающих клиентов». Как я могу использовать карты, чтобы сделать пары ключ-значение из имен клиентов и заказов соответственно и распечатать их?
#include <iostream>
#include <map>
#include<string.h>
using namespace std;
class Order
{
private:
string name, type;
double price;
public:
Order(string name="",string type="")
{
this->name=name;
this->type=type;
}
string getName(){return name;}
string getType(){return type;}
friend ostream &operator<<(ostream &out, Order &ord)
{
out<<ord.name<<", "<<ord.type<<endl;
return out;
}
};
class CoffeeShop
{
private:
map <string, Order> cafe;
public:
CoffeeShop(map <string, Order> c)
{
map <string, Order>::iterator it;
for(it=c.begin();it!=c.end();it++)
this->cafe.insert(*it);
}
void addOrder(string name, string type)
{
this->cafe.insert(make_pair(name,type));
cout<<"Order Added"<<endl;
}
void print()
{
map <string, Order>::iterator it;
for(it=cafe.begin();it!=cafe.end();it++)
{
cout<<it->first<<", "<<it->second.getType()<<endl;
}
}
};