C++的STL中accumulate的用法

所需的头文件:#include <numeric>

可以用来计算特定范围内所有元素的和  ,或者平均值。

 std::vector <Eigen::Vector3d> vec_points_src;//向量

 size_t num_pts = vec_points_src.size();

//tmp 是向量vec_points_src内每一维的和
 Eigen::Vector3d tmp = std::accumulate(vec_points_src.begin(), vec_points_src.end(), Eigen::Vector3d(0.0, 0.0, 0.0));

//meanCoord 是向量vec_points_src内每一维的平均值
 Eigen::Vector3d meanCoord = std::accumulate(vec_points_src.begin(), vec_points_src.end(), Eigen::Vector3d(0.0, 0.0, 0.0)) / /double(num_pts);

猜你喜欢

转载自blog.csdn.net/u013925378/article/details/83686502
今日推荐