64,662
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
#include "BaseStationDataBase.h"
using namespace std;
int main()
{
BaseStationDataBase* bsdb = new BaseStationDataBase();
bsdb->initialize();
return 0;
}
//BaseStationDataBase.h
#include <list>
#include <algorithm>
#include <vector>
#include <iostream>
using namespace std;
struct sBaseStation
{
list<int> mobile;
};
class BaseStationDataBase
{
public:
BaseStationDataBase(){};
~BaseStationDataBase(){};
void initialize();
int searchMobile(int);
void update(int);
void remove(int, int);
void show();
private:
sBaseStation _baseStation[400];
vector<int> _node;
};
//BaseStationDataBase.cpp
#include "BaseStationDataBase.h"
void BaseStationDataBase::initialize()
{
int numMobile; //the number of mobile
numMobile = 1000;
int j;
for (int i = 0; i < numMobile; i++)
{
j = i % 400; //it can use random() in here for j
_baseStation[j].mobile.push_back(i);
}
}
vector<int> BaseStationDataBase::searchMobile(int bs)
{
_node.clear();
list<int>::iterator it = _baseStation[bs].mobile.begin();
for (list<int>::iterator it = _baseStation[bs].mobile.begin(); it != _baseStation[bs].mobile.end(); it++)
{
_node.push_back(*it);
}
return _node;
}
void BaseStationDataBase::show()
{
for (int i = 0; i < _node.size(); i++)
cout << _node.at(i);
}
void BaseStationDataBase::update(int bs, int phone)
{
_baseStation[bs].mobile.push_back(phone);
}
void BaseStationDataBase::remove(int bs, int phone)
{
_baseStation[bs].mobile.remove(phone);
}