向向量的所有元素添加一个整数

Ahs*_*san 2 c++ algorithm add stdvector c++11

我有一个整数向量,可以说{1, 2, 3, 4}

如何10为每个元素添加常量值以将向量修改为{11, 12, 13, 14}

如果我想将每个元素都除以an int并修改向量,则与除法相同。我一直找不到解决方案。

JeJ*_*eJo 5

{1, 2, 3, 4}可以说,如何为每个元素添加一个常量值10以将向量修改为{11, 12, 13, 14}。并与同样的事情分裂,如果[...]

怎么样使用std::valarray

std::valarray是表示和操纵值数组的类。它支持按元素进行数学运算以及各种形式的广义下标运算符,切片和间接访问。

If you can use them, that is just one line of operation. (See a live demo online)

#include <iostream>
#include <valarray> // std::valarray

int main()
{
   std::valarray<int> valArray{ 1, 2, 3, 4 };
   valArray += 10;  // add each element with 10
   for (const int ele : valArray) std::cout << ele << " ";
   std::cout << "\n";

   valArray /= 2;   // divide each element by 2
   for (const int ele : valArray) std::cout << ele << " ";
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

Output:

11 12 13 14 
5 6 6 7 
Run Code Online (Sandbox Code Playgroud)