在 c++ 中创建和访问 4D 向量时出现问题
Problem with creating and accesing a 4D vector in c++
我正在用 c++ 创建一个 4D 向量,但在访问它时出现分割错误。这是我尝试编写的代码的一部分。
vector<vector<vector<vector <int>>>> glob;
tuple<int,int> f(vector<vector<int>> map, int u, int i,int k,int childEdge){
if (glob.size()>=u && glob[u].size()>=i && glob[u][i].size()>=k && glob[u][i][k].size()>= childEdge) return make_tuple(glob[u][i][k][childEdge],k);
分段错误发生在 if 中。显然,它试图访问不存在的值。我该如何检查?
如果glob.size()
u
,则有效索引的范围从0
到u-1
。您应该能够通过在if
语句的所有检查中将>=
替换为>
来解决此问题。
相关文章:
- 如何在C++向量中奇数元素前面加上值-1,我在使用insert函数时遇到了问题
- 添加存储在向量中的大整数的函数出现问题
- C++ 继承向量问题(无限循环+在其他类中使用向量的问题)
- SWIG c++到python:向量问题
- 向量问题,如何删除向量中的数组?
- 向量问题,也许有点手
- ndk中的标准与cpp向量问题
- 从数据文件到多维向量问题
- C++:向量问题的向量
- 类向量 c++ 问题
- 特征向量问题
- C++std::向量问题
- 结构中的向量问题
- C++类向量问题
- 向量的向量问题
- 获取索引和元素-向量问题
- 搜索或发现向量问题内部
- C++向量问题;通过引用传递内容
- 几个c++向量问题
- 指向包含向量问题的实例类的指针<int>