程序如下,它由三个文件构成:
//"include\student.h"
class student
{
private:
struct stu
{
char name[20];
char number[11];
char grade[6];
} stu[100];
int n;
public:
student();
void get();
int getn();
void show(int,int);
friendint max(student,int i,int j);
friendint min(student,int i,int j);
} ;
//student.cpp
#include
#include
#include
#include"include\student.h"
using namespace std;
student::student()
{
int i;
n=0;
for(i=0;i>s)
{
strcpy(stu[n].number,s);
fin>>stu[n].name;
fin>>stu[n].grade;
n++;
}
for(int i=0;ib) return i;
else if(a0)return i;
else return j;
}
}
int min(student c,int i,int j)
{
int a=0,b=0;
while(c.stu.grade[a]!='.') {a++;}
while(c.stu[j].grade!='.') {b++;}
if(a>b) return j;
else if(a0) return j;
else return i;
}
}
int student::getn()
{return n;}
//main1.cpp
#include"student.cpp"
int main()
{
student a;
a.get();
int n=a.getn();
int max1=0,min1=0,i=0;
for(i=1;istudent.obj : error LNK2005: "public: __thiscall student::student(void)" (??0student@@QAE@XZ) 已经在 main1.obj 中定义
1>C:\Users\owod\Desktop\luan\Debug\luan.exe : fatal error LNK1169: 找到一个或多个多重定义的符号
我只是举了其中两个错误,但不知道究竟错在哪儿,希望各位大侠赐教,一定重分酬谢,不胜感激。
注意这是三个文件合成的一个程序,不是一个简单的CPP 肯定是在产生文件关联的时候出现了某个问题
|