dev c++编译出现D:\collect2.exe [Error] ld returned 1 exit status

新手上路,请多包涵

include<iostream>

include<string>

using namespace std;
class ProductDog;
class CodeMonkey;
class ProductDog
{

string name;
int opt;

public:

int s;
void add_todolist(CodeMonkey& a,int b);
void reduce_todolist(CodeMonkey& a, int b);
void input()
{
    cin>>name>>opt>>s;
}
string outname()
{
    return name;
}
int outopt()
{
    return opt;
}
int outsum()
{
    return s;
}

};
class CodeMonkey
{

string name;
int todolist;

public:

CodeMonkey(string a,int b):name(a),todolist(b){}
CodeMonkey();
friend void ProductDog::add_todolist(CodeMonkey&,int);
friend void ProductDog::reduce_todolist(CodeMonkey& , int);
void input()
{
    cin>>name>>todolist;
}
string outname()
{
    return name;
}
void output()
{
    cout<<name<<" "<<todolist<<endl;
}

};
void ProductDog::add_todolist(CodeMonkey& a,int b)
{

a.todolist=a.todolist+b;

}
void ProductDog::reduce_todolist(CodeMonkey& a, int b)
{

a.todolist=a.todolist-b;

}
int main()
{

CodeMonkey *p;
ProductDog *q;
int m,n,i,j,opt,sum;
string s;
cin>>n;
p=new CodeMonkey [n];
for(i=0;i<n;i++)
p[i].input() ;
cin>>m;
q=new ProductDog [m];
for(i=0;i<m;i++)
{
    q[i].input() ;
    for(j=0;j<n;j++)
    {
        if(q[i].outname() ==p[j].outname() &&q[i].outopt() ==1)
        q[i].add_todolist(p[j],q[i].outsum() );
        else if(q[i].outname() ==p[j].outname() )
        q[i].reduce_todolist(p[j],q[i].outsum() );
    }
}
for(i=0;i<n;i++)
{
    p[i].output() ;
}
return 0;

}

阅读 11.3k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题