I have been running into the "'xxx' does not name a type" error a lot and most posts I've read before have mentioned that this error occurs with some dependency issues. However, I can't seem to find mine. Here's what I got:
GameLib.h
#ifndef GAMELIB_H_
#define GAMELIB_H_
//Structures
struct player_t {
std::string name;
int MMR;
};
//Prototypes
void* queueUpPlayer(void*);
int randomMMR();
std::string randomName();
#endif /* GAMELIB_H_ */
PlayerGroup.h
#ifndef GROUP_H_
#define GROUP_H_
class playerGroup {
private:
std::list<player_t> players;
std::list<player_t>::iterator it;
const int totalSize = 10;
public:
//Constructor
playerGroup();
//Destructor
~playerGroup();
//Add
void add(const player_t p);
....
};
#endif /* GROUP_H_ */
PlayerGroup.cpp
#include <iostream>
#include <cstdlib>
#include <string>
#include <cmath>
#include <list>
#include "GameLib.h"
#include "playerGroup.h"
using namespace std;
playerGroup::playerGroup() {}
playerGroup::~playerGroup() {}
void playerGroup::add(const player_t p) {
if(players.size() >= totalSize) exit(1);
players.push_back(p);
}
.....
I'm recieving this error on both the lists member variables in the PlayerGroup class:
..\src\PlayerGroup.h:13:2: error: 'list' in namespace 'std' does not name a type
..\src\PlayerGroup.h:14:2: error: 'list' in namespace 'std' does not name a type
Thanks for all the help in advance!
I believe you need to #include <list>
in your PlayerGroup.h file because it is used in that file.