Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/155.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 列表<&燃气轮机;C++;?_C++_Arrays_List - Fatal编程技术网

C++ 列表<&燃气轮机;C++;?

C++ 列表<&燃气轮机;C++;?,c++,arrays,list,C++,Arrays,List,我需要一个整数数组的动态列表 我认为可以宣布: list<int[10]> myListOfArrays; 列出mylistofarray; 但这不起作用,编译器返回错误: error: 'std::_list_node<_Tp>::_M_data' has incomplete type error: invalid use of array with unspecified bounds 错误:“std::\u列表\u节点::\u M\u数据”的类型不完整 错

我需要一个整数数组的动态列表

我认为可以宣布:

list<int[10]> myListOfArrays; 
列出mylistofarray;
但这不起作用,编译器返回错误:

error: 'std::_list_node<_Tp>::_M_data' has incomplete type
error: invalid use of array with unspecified bounds
错误:“std::\u列表\u节点::\u M\u数据”的类型不完整
错误:使用未指定边界的数组无效
有办法做到这一点吗


整数数组的大小不需要是动态的,只需要列表的数量

使用
std::list
of.

列出mylistofarray
将起作用,特别是当您对具有静态大小的int数组感到满意时

比如:

std::list<int*> listOfArrays;

int[10] intArray;

listOfArrays.push_back(intArray);
std::数组列表;
int[10]intArray;
列表阵列。推回(阵列内);

你真正要做的是在列表中存储int指针。

你可以创建向量向量或使其成为动态数组。你真的确定你需要一个
列表而不是
向量
?对于这种大小的容器,我会选择
向量
,如juanchopanza所建议的,以及当数组超出范围时会发生什么,但不是
std::list
?将数组嵌入
std::list
(与)会带来更好的安全性、更好的样式、更好的可维护性等等。此外,您无法从指针知道它是指向单个元素还是数组的第一个元素。如果是后者,则不知道数组的长度。所以它真的很脆弱。@RobertAllanHenniganLeahy非常正确,但我保持简单。我不认为这是他/她正在研究的关键代码,否则他们可能不会首先问这个问题。他/她甚至说,静态int数组就其用途而言是合适的,确切的长度是已知的。您的解决方案比
std::list
更简单吗?据我所知,std::数组仍然是“一维的”?还是我遗漏了什么?基本上我需要的是一个沿一个轴具有动态大小的二维数组。。。