c ++中3D矢量的问题

时间:2013-03-11 18:28:23

标签: c++ vector

我是C ++的新手,我正在努力解决这个3D矢量的问题。问题的核心是以下代码。我创建了一个100 * 100 * 10的3D矢量,但在我的主函数中,程序似乎并不知道它存在,因为我在尝试运行它时遇到错误。 “错误:符号particleGrid未在当前范围中定义”。 2D矢量没有这个问题。我正在使用ROOT运行代码,如果这很重要的话。

using namespace std;
Int_t gridResolution=100;
vector<vector<vector<int>>> particleGrid(gridResolution,vector<vector<int>>(gridResolution,vector<int>(10)));

void main(){
    particleGrid.clear();
}

非常感谢任何帮助或提示。

1 个答案:

答案 0 :(得分:3)

似乎这是一个语法错误。

vector<vector<vector<int>>> particleGrid(gridResolution,vector<vector<int>>(gridResolution,vector<int>(10)));

您的编译器会将>>>中的vector<vector<vector<int>>>>>中的vector<vector<int>>视为>>运算符。 解决方案:将此行中的所有>分开

vector<vector<vector<int> > > particleGrid(gridResolution,vector<vector<int> >(gridResolution,vector<int>(10)));