C++ 从';int';至';向量*';

C++ 从';int';至';向量*';,c++,class,C++,Class,从“int”到“Vector*”的转换无效 这是我的错误代码: Vector Vector::operator+(const Vector &s1) { Vector *p(size); for(int i=0;i<size;++i) { cout<<"*****"<<endl; cout<<i<<endl; p->s[i]=s[i]+s1.s[i];

从“int”到“Vector*”的转换无效

这是我的错误代码:

Vector Vector::operator+(const Vector &s1)
{
    Vector *p(size);
    for(int i=0;i<size;++i)
    {
        cout<<"*****"<<endl;
        cout<<i<<endl;
        p->s[i]=s[i]+s1.s[i];
    }
    return *p;
}
Vector Vector::operator+(常量向量&s1)
{
向量*p(大小);

对于(inti=0;i你太热衷于写星号了

Vector Vector::operator+(const Vector &s1)
{
    Vector p(size);
    for(int i=0;i<size;++i)
    {
        p.s[i]=s[i]+s1.s[i];
    }
    return p;
}
Vector Vector::operator+(常量向量&s1)
{
向量p(大小);

对于(int i=0;i)向量指针初始化的大小究竟是如何工作的?在您解决了这个问题(上面的评论中提到了什么)之后,您需要研究3/5/0的规则。
Vector Vector::operator+(const Vector &s1)
{
    Vector p(size);
    for(int i=0;i<size;++i)
    {
        p.s[i]=s[i]+s1.s[i];
    }
    return p;
}