作为线程的名称说我在向量中添加元素时遇到问题...非常相似的构造工作完美(对象向量数组)
Game.h
class Game: parent, stan
{
public:
(...)
struct lista_boardow
{
stan tabliczka[8][8];
};
std::vector<lista_boardow> _lista_boardow;
(...)
static int AiMove(std::vector<lista_boardow>& vect, stan _b[][8]);
(...)
第二个:
Game.cpp
(...)
int Game::AiMove(std::vector<lista_boardow>& vect, stan tym_board[][8])
{
stan tabi[8][8];
(...)
vect.push_back(tabi); // ?????
}
(...)
我得到错误:
error C2664: 'void std::vector<_Ty>::push_back(_Ty &&)' : cannot convert parameter 1 from 'stan [8][8]' to 'Game::lista_boardow &&'
有什么想法吗?
答案 0 :(得分:1)
你有什么问题?
#include <iostream>
#include <vector>
using namespace std;
struct elem {
int value;
elem(int value) : value(value) {}
};
struct nih_array {
elem data[2][2];
};
int main() {
vector<nih_array> v;
v.push_back({1, 2, 3, 4});
cout << v[0].data[1][0].value << endl; // "3", no problem here
}