c++ - 向 C++ 数组添加维度?

标签 c++ multidimensional-array

是否可以在 C++ 中为数组或 vector 动态添加维度?人们通常会如何处理这个问题?此外,是否有一个 STL 容器允许实例化一个具有 N 维的数组(假设我有一个类有一个包含多维数据的成员,但在类实例化之前我不知道维数) .也许是这样的:

vector<int> ndim_vector = {20 10 50};
some_container<double> c( ndim_vector );

最佳答案

您可以编写一个类来执行类似的操作。例如 OpenCV library提供 N 维矩阵。但是,STL中没有这样的东西。不过,您可以构建自己的类,这些类可以从 STL 容器中实现此行为。 Boost 库项目还提供了一个 multidimensional array library .

关于c++ - 向 C++ 数组添加维度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17148188/

相关文章:

c++ - 多线程环境中的信号处理函数

c++ - STL 流 : forward operator<< calls 的包装类

c++ - Qt 信号和槽通过引用传递

c++ - 如何从文本文件中读取矩阵并将其存储到二维数组中?

java - 如何将一行从二维数组复制到另一个

matlab - 如何沿着数组的某个维度进行操作?

c++ - 带有两个参数的 decltype 修改类型

c++ - EV 打印使 INET/OmNET++ 中的单元测试失败

javascript - 在 JS 中,anArray = [] 有效,但 abArray.splice(0, anArray.length) 和 anArray.length=0 在以下代码中产生不正确的结果 :

python - 如何访问 Pandas 数据框中的多级索引?