C ++如果我不知道数组大小并需要接收数组怎么办?

时间:2017-01-30 17:33:51

标签: c++ arrays

我的功能如下:

function(double* numbers)

我知道如果我知道数字数组的大小,我就可以做

double* numbers = new double[size];
function(numbers)

这将正确返回numbers中的值,但是,现在我不知道numbers的大小,我仍然想使用函数function,这是第三方我不想改变库函数,有没有办法在不知道数组大小的情况下得到数组呢?

1 个答案:

答案 0 :(得分:0)

不,没有标准的方法可以在运行时从纯粹的指针中检索数组的大小。我建议您使用std::array表示固定大小的数组,或std::vector表示可变长度数组。一种不太安全的替代方法是将数组的大小与指针一起传递。