Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2349701
  • 博文数量: 816
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5010
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-17 17:57
文章分类

全部博文(816)

文章存档

2011年(1)

2008年(815)

分类:

2008-12-17 18:07:57

// 应该够用了

#include
#include
#include

using namespace std;

struct Student {
    enum GENDER {FEMALE, MALE};
   
    string id;
    string name;
    GENDER gender;
   
    friend ostream& operator<<(ostream& os, Student stu) {
        return os << "The student's ID[" << stu.id << "], Name[" << stu.name
                  << "], Gender[" << stu.gender << "].";
    }
};

class StudentDB {
public:
    void addStudent(const Student& stu) {
        students.insert(make_pair(stu.id, stu));
    }
   
    void addStudent(const string& id, const string& name, const Student::GENDER& gender) {
        Student stu;
        stu.id = id;
        stu.name = name;
        stu.gender = gender;
       
        addStudent(stu);
    }
   
    int removeStudentById(const string& id) {
        map::iterator it = students.find(id);
    if (it != students.end()) {
    students.erase(id);
    return 1;
    }
   
    return 0;
    }
   
    Student findStudentById(const string& id) {        
        map::iterator it = students.find(id);
        if (it != students.end()) {
        return it->second;
    }
   
    Student stu;
        stu.id = "";
        stu.name = "";
        stu.gender = (Student::GENDER) 0;
   
    return stu;
    }
   
private:
    map students;
};


--------------------next---------------------

阅读(1101) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~