我对二维列表数组有疑问。我正在制作有条理的列表,然后我将它与数组连接。
class Game: parent, stan
{
public:
static void Start();
private:
struct lista_rodzicow
{
static std::list<parent> kolejka;
};
static lista_rodzicow parent[10][10];
这是我的Parent.h标题(当然不是完整的):
class parent
{
public:
int x, y, strona, combo;
parent();
parent(int x, int y, int s, int c):x(x), y(y), strona(s), combo(c)
{
}
方法我遇到问题:
bool Game::CzyBylem(int x, int y)
{
for (std::list<parent>::iterator it = parent[x][y].kolejka.begin(); it != board[x][y].kolejka.end(); ++it)
{
if( it->x == x && it->y == y )
return true;
}
}
我需要的是二维数组,列表(或队列)链接到它,例如。在元素[3] [4]中我可以添加几个不同的类,如(a,b,c,d)。
完整的例子:
[0][0] - (a, b, c, d), (a2, b2, c2, d2)
[0][1] - empty
[1][0] - (a3, b3, c3, d3)
[1][1] - (a4, b4, c4, d4), (a5, b5, c5, d5)
我得到了Erorrs:
Error 15 error C2923: 'std::list' : 'parent' is not a valid template type argument for parameter '_Ty'
Error 16 error C2440: 'initializing' : cannot convert from 'std::_List_iterator<_Mylist>' to 'std::_List_iterator<_Mylist>'
Error 18 error C2228: left of '.end' must have class/struct/union
Error 19 error C2839: invalid return type 'int *' for overloaded 'operator ->'
Error 20 error C2039: 'x' : is not a member of 'std::_List_iterator<_Mylist>'
等
答案 0 :(得分:1)
您似乎有parent
作为班级,parent
作为Game
的成员。
尝试将成员定义为parent_