P.s__葬爱 发表于 2014-8-6 22:00:09

大神给改改代码

#include<string>
#include<iostream>
using namespace std;
class ExamInfo
{
        private:
        string name;
        enum mode{GRADE,PASS,PERCENTAGE};

union
{
       
        char grade;
        bool pass;
        int percent;
       
}
public:
        ExamInfo(string name,char grade):ame(name),mode(GRADE),grade(grade){}
        ExamInfo(string name,bool pass):name(name),mode(PASS),pass(pass){}
        ExamInfo(string name,int percent):name(name),mode(PERCENTAGE),percent(percent)()
        void show();
};
void ExamInfo::show()
{
        cout<<name<<";"
        switch(mode)
        {
        case GRADE:cout<<grade;break;
        case PASS:cout<<(pass?"PASS":"FALT");break;
        case PERCENTAGE:cout<<percent;break;
        }
        cout<<endl;
}
int main()
{
        ExamInfo course1("English",'B');
        ExamInfo course2("Calculus",true);
        ExamInfo course3("c++ Programming",85);
        course1.show();
        course2.show();
        course3.show();
        return 0;
}

elvo 发表于 2014-8-8 08:35:57

#include<string>
#include<iostream>
using namespace std;
class ExamInfo
{
      private:
      string name;
      enum {GRADE,PASS,PERCENTAGE}mode;//////////////////////////////

union
{
      
      char grade;
      bool pass;
      int percent;
      
};
public:
      ExamInfo(string name,char grade):name(name),mode(GRADE),grade(grade){}    ////////////////////////
      ExamInfo(string name,bool pass):name(name),mode(PASS),pass(pass){}
      ExamInfo(string name,int percent):name(name),mode(PERCENTAGE),percent(percent){}///////////////////
      void show();
};
void ExamInfo::show()
{
      cout<<name<<";";
      switch(mode)
      {
      case GRADE:cout<<grade;break;
      case PASS:cout<<(pass?"PASS":"FALT");break;
      case PERCENTAGE:cout<<percent;break;
      }
      cout<<endl;
}
int main()
{
      ExamInfo course1("English",'B');
      ExamInfo course2("Calculus",true);
      ExamInfo course3("c++ Programming",85);
      course1.show();
      course2.show();
      course3.show();
      return 0;
}
页: [1]
查看完整版本: 大神给改改代码