一道C++作业题

来源:百度知道 编辑:UC知道 时间:2024/06/30 11:04:19
定义一个CStudent(学生类),然后定义一个CStudentManage(管理学生类)以便操作管理学生的有关信息。要求在CStudentManage类中使用链表(单向链表或者双向链表均可)管理CStudent对象。CStudent类的数据成员可以自己确定。请注意拷贝构造函数、赋值运算符的使用。尤其注意new和delete的正确使用。

#include <string>

/////////////////////////////////////////////////////////////////////
// CStudent的简单实现
class CStudent
{
public:
//三大函数
CStudent(std::string name, size_t age, size_t id):m_name(name), m_age(age), m_ID(id){}
CStudent(const CStudent& rhs):m_name(rhs.m_name), m_age(rhs.m_age), m_ID(0){}
CStudent& operator = (const CStudent& rhs)
{
m_name = rhs.m_name;
m_age = rhs.m_age;
m_ID = 0;
}

std::string getName()const{return m_name;}
size_t getAge()const{return m_age;}
size_t getID()const{return m_ID;}
void setID(size_t id){m_ID = id;} //每个studentID需不同
private:
std::string m_name;
size_t m_age;
size_t m_ID;
};

//////////////////////////////////////////////////////////////////////////
// CStudentManage类的实现,链表节点实现为内部类
class CStudentManage
{
public:
CS