【C++Primer】封装_拷贝构造函数

来源:互联网 发布:苹果越狱软件源大全 编辑:程序博客网 时间:2024/05/17 21:39

噫,大概有些了解构造函数了,这大概是一下午反复折腾收到的最好回报了。


#include <stdio.h>#include <iostream>#include <string>#include "Teacher.h"using namespace std;class Teacher{public:Teacher(string name="Ludwing",int age=26);Teacher(const Teacher &tea);//声明拷贝构造函数;void setName(string name);string getName();void setAge(int age);int getAge();private:string m_strName;int m_iAge;};Teacher::Teacher(string name,int age):m_strName(name),m_iAge(age){cout<<"Teacher(string name,int age)"<<endl;}Teacher::Teacher(const Teacher &tea){cout<<"Teacher(const Teacher &tea)"<<endl;}void Teacher::setName(string name){m_strName=name;}string Teacher::getName(){return m_strName;}void Teacher::setAge(int age){m_iAge=age;}int Teacher::getAge(){return m_iAge;}void test(Teacher t){}int main(){Teacher t1;//调用t1时使用的是正常的构造函数;test(t1);//调用test时触发了拷贝过程,所以用到了拷贝构造函数;Teacher t2(t1);//调用t2,t3时使用的是拷贝构造函数;Teacher t3=t1;return 0;}


0 0
原创粉丝点击