C++复制构造函数的实现

来源:互联网 发布:二次视频解析接口源码 编辑:程序博客网 时间:2024/06/05 07:33

复制构造函数是一种特殊的构造函数,有一般构造函数的特性。它的功能是用一个已知的对象来初始化一个被创建的同类对象。复制构造函数的参数传递方式必须按引用来进行传递,请看实例:

#include <iostream>#include <cstring>using namespace std ; class Student {private :char name[8];int age ;char sex ; int score ;public :void disp(); //打印信息的函数声明Student(char name[],int age , char sex ,int score); //构造函数声明Student(Student &dx);//复制构造函数的声明~Student(); //析构函数的声明};//打印信息函数的实现void Student::disp(){cout << this->name << endl ; cout << this->age << endl ; cout << this->sex << endl ; cout << this->score << endl ;}//构造函数的实现 Student::Student(char name[],int age , char sex ,int score){strcpy(this->name,name);this->age = age ; this->sex = sex ;this->score = score ;}//复制构造函数的实现Student::Student(Student &dx){strcpy(this->name , dx.name);this->age = dx.age ; this->sex = dx.sex ;this->score = dx.score ;} //析构函数的实现Student::~Student(){cout << "程序结束" << endl ;} int main(void){Student stu1("YYX",23,'N',86);Student stu2(stu1); stu1.disp() ;stu2.disp() ;return 0 ;}
运行结果:

YYX

23

N

86

YYX

23

N

86

程序结束

程序结束

原创粉丝点击