因此,出于所有意图和目的,我正在尝试为自己实现一个用于矢量参数的 C++ 的 STL 算法 inner_product 的 Java 版本。到目前为止,我的代码(可能根本上是错误的)看起来像这样:
public static<T,K> double inner_product(Vector<T> v1, Vector<K> v2)
{
double isum = 0;
for(int i=0;i<v1.size()&&i<v2.size();i++)
{
isum+=v1.elementAt(i)*v2.elementAt(i);
}
return isum;
}
问题是运算符 * 对于类型 T、K 是未定义的。但是,到目前为止,我的知识还没有涵盖预定义运算符,尽管据我所知,这在 Java 中也是不可能的。在实现采用泛型的功能的方式上,我们将不胜感激。提前致谢。