注意:4 5是我故意加的,表示那是程序没运行。
代码:
#include <iostream>
#include <Windows.h>
using namespace std;
class server
{
public:
server(char lettername);
static int getTurn();
void serveone();
static bool stillopen();
private:
static int turn;
static int lastserved;
static bool nowopen;
char name;
};
int server::turn = 0;
int server::lastserved = 0;
bool server::nowopen = true;
server::server(char lettername)
{
name = lettername;
}
int server::getTurn()
{
turn++;
return turn;
}
bool server::stillopen()
{
return nowopen;
}
void server::serveone()
{
if (nowopen && lastserved < turn)
{
lastserved++;
cout << "Server" << name << "now serving " << lastserved << endl;
}
if (lastserved >= turn)
{
nowopen = false;
}
}
int main()
{
server s1('A'), s2('B');
int numeber, count;
do
{
cout << "How many your group?";
cin >> numeber;
for (count = 0; count < numeber; count++)
cout << server::getTurn() << ' ' << endl;
s1.serveone();
s2.serveone();
cout << "Working........." << endl;
Sleep(10000);
} while (server::stillopen());
cout << "Now closing service." << endl;
system("pause");
return 0;
}