定义一个学生类 Student,学生类中有 3 个私有数据成员:name(姓名)、cls(班级)、grade(年级);3 个公有成员函数;Student(构造函数)、display、~Student(析构函数)。使用构造函数为 Student 类的对象赋值(name 使用动态内存分配空间),display 负责显示学生的基本信息,在析构函数中释放动态分配的内存。
class Student
{
public:
Student(const char * name, const char * cls, const char * grade);
void Dispaly();
~Student();
private:
char * m_strName;
char * m_strCls;
char * m_strGrade;
};
Student::Student(const char * name, const char * cls, const char * grade)
{
assert(name !=NULL);
assert(cls !=NULL);
assert(grade !=NULL);
m_strName = new char[strlen(name)+1];
strcpy(m_strName,name);
m_strCls = new char[strlen(cls)+1];
strcpy(m_strCls,cls);
m_strGrade = new char[strlen(grade)+1];
strcpy(m_strGrade,grade);
}
Student::~Student()
{
delete [] m_strName;
delete [] m_strCls;
delete [] m_strGrade;
}
void Student::Dispaly()
{
printf("Studnet'name is %s,class is%s,grade is%s",m_strName,m_strCls,m_strGrade);
}