横向减少操作的名称?

时间:2012-12-14 07:22:15

标签: c++ function naming

我目前正在为矢量化操作编写一个高度模板化的C ++帮助器类,我需要一个特定操作的名称。

我已经有2个函数,其中常用的名称来自矢量语言:

  • apply()将一个函数应用于向量的每个元素
  • reduce()对向量应用缩减操作并返回标量

现在我想实现另一个函数,它是这两者之间的混合:它将几个向量作为输入,并在每一行上应用简化操作,并返回一个向量。

为了说明这一点,我们有:

  • apply(func, vec) - >返回{func(vec[0]), func(vec[1]), ..., func(vec[n])}
  • reduce(func, vec) - >返回func(vec[0], vec[1], ..., vec[n])

和:

  • something(func, vec1, vec2, ..., vecn) - > 返回{func(vec0[0], vec1[0], ..., vecn[0]), func(vec0[1], vec1[1], ..., vecn[1]), ..., func(vec0[n], vec1[n], ..., vecn[n])}

这个函数的通用名称是什么(一个简单的动词,如apply或reduce)(如果存在这样的函数,则与其他矢量语言兼容)?

1 个答案:

答案 0 :(得分:0)

也许我从Haskell看过的zip_with?