为什么uBLAS没有`operator *(matrix,vector)`?

时间:2013-11-18 20:05:18

标签: c++ boost ublas boost-ublas

doc中,他们说

  

我们决定不使用运算符重载...

他们为这些提供了prod。但为什么?有什么好理由吗?我喜欢matrix * vector(和大多数其他语言一样)。我喜欢理解为什么他们没有重载这个操作符来理解为什么自己这样做可能是个坏主意。或者如果我自己超载它们不是它们的任何缺点吗?

1 个答案:

答案 0 :(得分:0)

可能是因为op*在其他语言中,例如使用Python中的Numpy,将永远是元素方面的。如果一个元素是一个矩阵而另一个元素是一个向量,它将尝试广播缺失维度中的所有元素。