【发布时间】:2012-09-13 21:50:36
【问题描述】:
我有 6 个函数来自一个使用大量向量的信号处理工具箱。由于我的 DSP 上的一些内存问题,我需要改用数组。有没有一种简单的方法可以将向量转换为数组以及使用的函数,即插入、push_back、擦除等?
【问题讨论】:
-
向量本质上是数组,使用它们不会有任何损失。原始数组容易出错。另外,我怀疑您的记忆问题来自使用矢量。你看过它是从哪里来的吗?
-
除非您编写自己的数组类,否则您不会在原始数组上拥有
push_back等函数。 -
关于内存问题,我尝试创建一个大小为 1024 的向量(本地),但对其他存在的局部变量执行它不适合堆栈。堆栈也被限制为 4k。标量向量和数组之间的大小差异究竟是什么?它也有一些区别,因为我可以轻松地制作那个大小的数组?而且我必须补充一点,我正在内存有限的 DSP 上编程?
-
C++11 有
std::array类,其接口与std::vector类似。
标签: c++ arrays vector signal-processing