📄 a_6_2.cpp
字号:
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
class Student
{ public:
Student(char * ,int); //构造函数
~Student(); //析构函数
void copy(Student &);
void display()
{ cout<<"姓名:"<<name<<" 学号:"<<id<<endl;
}
private:
int id;
char * name;
};
Student::Student(char * pName="no name",int reg_Id=0)
{ id=reg_Id;
name=new char[strlen(pName)+1];
strcpy(name,pName);
cout<<"创建一个新的学生资料 "<<pName<<endl;
}
Student::~Student()
{ cout<<"销毁 "<<name<<endl;
delete name;
}
void Student::copy(Student & student) //资源复制函数
{ if(this==&student)
{ cout<<"错误:不能复制自身!"<<endl;
return;
}
else
{ name=new char[strlen(student.name)+1];
strcpy(name,student.name);
id=student.id;
}
}
void main()
{ Student Kevin("Kevin",12),Tom("Tom",23); // 创建类对象并调用构造函数
Kevin.display();
Tom.display();
Kevin.copy(Kevin);
Tom.copy(Kevin);
Kevin.display();
Tom.display();
cin.get(); //等待结束,以便调测程序,可以删除
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -