在C++中创建无限数组

Creating unlimited array in C++

本文关键字:无限 数组 创建 C++      更新时间:2023-10-16

谁能帮忙定义无限数组C++来制作一个正弦波发生器,我可以在其中存储正弦波的值?

for (;;)
{
X[n]= sin(2*PI*f0/fs);
}

如果你想要一个"无限"(仍然受到可用 RAM 数量的限制)数组,你可以使用矢量。(见下面的编辑)

但是,在您的情况下,我会使用一个大数组(例如,最多一百万个元素或等于屏幕宽度的数组大小)。

编辑:这是一个例子

// Declare (and instantiate) a vector
std::vector<float> vec;
// Add elements to the vector
for(int i = 0; i < 100; i++)
vec.push_back(i*i);
// Read and print the elements in the vector
for(int i = 0; i < vec.size(); i++)
std::cout << "vec[" << i << "] = " << vec[i] << 'n';
// Note:
std::cout << "Note that a vector is limited to " << vec.max_size() << " elementsn";

我仍然强烈建议简单地声明一个大数组,因为您可能只需要有限数量的值,并且您事先知道需要多少值(当您不知道数组有多大时,通常使用向量)。

不幸的是,它无法完成,您至少可以尝试遍历一些大常量,例如ULONG_MAX,这是4294967295。

但首先,问问自己你有足够的记忆力吗?