我想为存储在std :: array容器中的所有数据添加一些偏移量:
std::array<double, 256> data;
ReadData(data);
// apply data offset
const double OFFSET = 0.123;
data += OFFSET;
可以用例如std :: for_each和lambda。
std::for_each(data.begin(), data.end(), [=OFFSET](auto& n){ n += OFFSET; });
我想知道是否有一种更优雅,更简洁,更有效的方法来实现这一目标。
答案 0 :(得分:8)
有时候只是编写循环比其他任何东西都清楚:
for (auto& n : data) n += OFFSET;