class Player
{
public:
Player(){p_name = '\0';p_life = 10000;p_goal = 0;};
Player(char *name,int life = 10000, int goal = 0);
char *p_name;
int p_life;
int p_goal;
};
#define MAX 100U
class Match
{
public:
int tm_total;
Player tm[MAX];
// Match();
void CreateMap();
}
Player::Player(char *name,int life , int goal)
{
p_name = name;
p_life = life;
p_goal = goal;
} ///////////////////////////上个问题已经解决了又有了新问题
bool KickTime(int kicktime)
{
time_t tm;
time(&tm);
if(tm >= kicktime)
{
return false;
}else
{
return true;
}
}
void Match::GetRegister()
{
vector<Player*> Msg;
bool flag;
int num = 0;
char name[15];
time_t kicktime,cur_time;
time(&cur_time);
kicktime = cur_time + 30; //测试用的30S
while(1)
{
flag = KickTime(kicktime);
if(flag)
{
cin>>name;
tm[num++].p_name = name; ///为什么这里存储后得到的总是最后面的一组值???
}else
{
CreateMap();
tm_total = num -1;
break;
}
}
for(int i=0; i<tm_total; i++)
{
cout<<tm[i].p_name<<endl; ///为什么这里存储后得到的总是最后面的一组值???
}
}