对于运算符*的满载实现向量之前的乘运算

对于运算符*的重载实现向量之前的乘运算设向量X(x1,x2,x2)和Y(y1,y2,y3),实现他们之前的乘法定义为:X*Y

对于运算符*的重载实现向量之前的乘运算
设向量X=(x1,x2,x2)和Y=(y1,y2,y3),实现他们之前的乘法定义为:
X*Y=x1*y1+x2*y2+x3*y3
对于运算符*的重载实现向量之前的乘运算

[解决办法]
之极定义个向量的类,然后重载运算符*。有什么问题?
[解决办法]
一下代码供参考:

C/C++ code
#include <iostream>#include <vector>using namespace std;template <typename T>class Vector{private:    vector<T> vec;public:    Vector()    {        vec.clear();    }    void add_element(const T& element)    {        vec.push_back(element);    }    T operator * (const Vector& v)    {        if(vec.size() != v.vec.size())        {            cout << "Two Vector's size do not match" << endl;            return 0;        }        T product = 0;        for(int i = 0; i < vec.size(); ++i)        {            product += vec[i] * v.vec[i];        }        return product;    }};int main(int argc, char* argv[]){    Vector<int> v1;    Vector<int> v2;    v1.add_element(1);    v1.add_element(2);    v1.add_element(3);        v2.add_element(2);    v2.add_element(3);    v2.add_element(4);    int a = v1 * v2;    cout << a << endl;    return 0;}
[解决办法]
const vector operator * (const vector &, const vector &);