所以這裏是我的簡化代碼。訪問類C++中的3d矢量
class Game
{
public:
void helper(char c);
vector<vector<vector<char>>> board(5, vector<vector<char>>(10, vector<char>(40)));
Game();
};
void Game::helper(char c)
{
int tempY = 0;
int tempX = 0;
int temp1 = 0;
if (board[temp1][tempY][tempX] != 'c')
{
board[temp1][tempY][tempX] = c;
}
}
int main()
{
Game game;
game.helper('C');
cout<<game.board[0][0][0]<<endl;
}
然後,我就在這條線2級的錯誤:
if (board[temp1][tempY][tempX] != 'c')
1.錯誤C3867: '遊戲::板':非標準語法;使用「&」創建一個指針構件
- 錯誤C2109:下標要求數組或指針類型
請使用大括號! 'vector>> board {5,vector > {10,vector {40}}};' –
knivil
您是否確實'#包括'?請發佈[MCVE]。 –
專業提示:錯誤列表頂部的錯誤是最重要的錯誤,因爲這是出錯的地方。你不能忽視它們,並認爲它們不是問題。你必須得到關於你的'board'初始化的錯誤。它在語法上不合法。 –