private:
int top;//ÏîÄ¿¼Ç¼ָÕë project pro[m]; RData();//¹¹Ô캯Êý void clear()//Çå³ýº¯Êý¶¨Òå { }
int addproject(int n,char *na,int nn,char *nb);//ÏîÄ¿ÐÅÏ¢Ìíproject *equal(int projectid)//°´±àºÅ²éÕÒ { }
{ }
return &pro[i];
for(int i=0;i<=top;i++) top=-1;
public://Íⲿ½Ó¿Ú
¼Ó£¬Ð麯ÊýÖØÐ¶¨Òå
if(pro[i].getnumber())projectid&&pro[i].gettag()==0;
return NULL;
void output();//Êä³öº¯Êý void projectdate();//²Ù×÷º¯Êý
void sort(project *b,int c);//ÅÅÐòº¯Êý ~RData();//Îö¹¹º¯Êý
};
ͨ¹ý¹«ÓÐÅÉÉú£¬projectÀàºÍRdataÀàÅÉÉú³ö³ý¹¹Ô캯Êý¡¢Îö¹¹º¯ÊýºÍÐ麯ÊýÖ®ÍâµÄÈ«²¿³ÉÔ±£¬ÓÉÓÚ»ùÀàµÄ³ÉÔ±Êǹ«ÓкÍ˽ÓÐÀàÐÍ£¬Òò´ËÔÚÅÉÉúÀàÖеijÉÔ±º¯ÊýÖУ¬´Ó×Ô¼º»ùÀà¼Ì³ÐÀ´µÄ³ÉԱȫ²¿¿ÉÒÔ·ÃÎÊ£¬¶ø¶ÔÓÚ½¨Á¢projectÀàºÍRdataÀà¶ÔÏóµÄÍⲿģ¿éÀ´½²£¬»ùÀàµÄ±£»¤ºÍ˽ÓеijÉÔ±ÊÇÎÞ·¨·ÃÎʵġ£Í¨¹ý±£»¤·ÃÎÊÀàÐͺ͹«Óеļ̳з½Ê½£¬ÊµÏÖÁË»ùÀàprojectºÍRdataµÄÊý¾ÝµÄ¿É¿¿±£»¤¡£ÔÚ³ÌÐòÖУ¬ÏîÄ¿ËùÐèµÄ±àºÅ¡¢Ãû³Æ¡¢¸ºÔðÈ˺͵ȼ¶²ÉÓö¯Ì¬·ÖÅäÄڴ棬ÕâЩ¹¤×÷¶¼ÊÇÔÚ»ùÀà¡¢ÅÉÉúÀàµÄ¹¹Ô캯ÊýÖÐÍê³É£¬ËüÃǵÄÇåÀí¹¤×÷ÔÚÎö¹¹º¯ÊýÖÐÍê³É¡£ÆäÓàµÄÅÉÉúº¯Êý¸ºÔðÏîÄ¿µÄÊäÈëÊä³ö¡¢ÌáÈ¡¡¢Çå³ýµÈ¹¤×÷¡£
- 5 -
4.2 ÀàµÄʵÏÖ
//projectÀàµÄʵÏÖ
void project::output()//¶Á³öÏîÄ¿ÐÅÏ¢ { }
void project::addproject(int n,char *na,int nn,char *nb)//ÏîÄ¿ÐÅÏ¢Ìí¼Ó,Ð麯Êý { }
//RdataÀàµÄʵÏÖ
RData::~RData()//Îö¹¹º¯Êý { }
void RData::output()//¶Á³öÏîÄ¿ÐÅÏ¢ {
for(int i=0;i<=top;i++)//Êä³öÿһÌõÏîÄ¿ÐÅÏ¢
- 6 -
cout<<\±àºÅ\Êä³ö±àºÅ cout< cout<<\¸ºÔðÈË\Êä³ö¸ºÔðÈË cout< tag=0; number=n; strcpy(name,na);//µ÷ÓÃstrcpyº¯Êý£¬ÊäÈëÃû³Æ leval=nn; strcpy(charge,nb);//µ÷ÓÃstrcpyº¯Êý£¬ÊäÈ븺ÔðÈË fstream file(\for (int i=0;i<=top;i++) if (pro[i].gettag()==0)//ÊÍ·ÅÄÚ´æ file.write((char*)&pro[i],sizeof(pro[i])); file.close(); } pro[i].output(); int RData::addproject(int n,char *na,int nn,char *nb)//ÏîÄ¿ÐÅÏ¢Ìí¼Ó£¬Ð麯ÊýÖØÐ¶¨Òå { } RData::RData()//¹¹Ô캯Êý { } void RData::sort(project *b,int c)//¶ÔÅÅÐòº¯ÊýµÄÉùÃ÷ { int i,j; project temp; int choose;//ÊäÈëµÄÑ¡Ïî cout<<\°´ÏîÄ¿±àºÅÅÅÐò:\\n\project s; top=-1;//Çå¿ÕËùÓÐÏîÄ¿ÐÅÏ¢ fstream file(\//´ò¿ªÒ»¸öÊäÈëÎļþ while(1) { } file.close(); file.read((char *)&s,sizeof(s)); if (!file)break; top++; pro[top]=s; project *p=equal(n);//²éÕÒÊÇ·ñ´æÔÚ if (p==NULL) { } return 0; top++; pro[top].addproject(n,na,nn,nb);//ͨ¹ýÖ¸Õë½øÐÐÌí¼ÓÏîÄ¿ÐÅÏ¢ return 1; - 7 - cout<<\°´ÏîÄ¿Ãû³ÆÅÅÐò:\\n\cout<<\ÇëÊäÈëÒª½øÐеIJÙ×÷:\cin>>choose; if(choose==1)//ðÅÝÅÅÐò·¨¶ÔÏîÄ¿°´±àºÅÅÅÐò { } for (i=0;i<=c;i++) { } if (choose==2)//ðÅÝÅÅÐò·¨¶ÔÏîÄ¿°´Ãû³ÆÅÅÐò { for(i=0;i<=c-1;i++) { } for (i=0;i<=c;i++) for(j=j+1;j<=c;j++) { } if(strcmp(b[j].getname(),b[i].getname())>=0) { } temp=b[i]; b[i]=b[j]; b[j]=temp; b[i].output(); for(j=0,j<=c;j++;) { } if (b[j].getnumber()>b[i].getnumber()) { } temp=b[i]; b[i]=b[j]; b[j]=temp; - 8 -