如何在 C++ 中将浮点数组添加到浮点向量

how to add a float array to a float vector in c++

问题来了。我有一个名为 vec 的浮点矢量:

std::vector<float> vec {1.1,2.2};

现在还有一个浮点数组叫,arr:

float arr[]={3.3 4.4 5.5};

所以问题是如何将数组添加到向量中,以便在最后我们得到 {1.1 2.2 3.3 4.4 5.5} 一个更长的浮点向量。

我试过了,

vec.insert(vec.begin(), arr,arr+3);

但是编译器给出了一个以

开头的长错误

"error: no match in operator + in arr+3"

类似的东西对我有用:

std::vector<float> vec {1.1, 2.2};
float arr[] = {3.3, 4.4, 5.5};
vec.insert(vec.end(), arr, arr+3);

我猜你犯了一些简单的错误,例如:

  • 您忘记用逗号分隔浮点数组中的值。在问题中,它们仅由空格分隔,实际上 arr 未成功声明,您会收到错误消息。
  • 如果你想在最后添加你的值,你必须 vec.insert(vec.end(),...)。第一个参数是迭代器,您的范围将被插入到该迭代器之前。