如何在c ++中向float向量添加一个float数组

时间:2015-02-28 19:50:29

标签: c++ arrays vector

这是问题所在。我有一个名为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);

但是编译器会以

开头给出一个很长的错误

&#34;错误:运算符+在arr + 3&#34;

中不匹配

1 个答案:

答案 0 :(得分:2)

这样的事情对我有用:

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(),...)。第一个参数是迭代器,在此之前将插入范围。