Advertisement

C++ copy constructor's way

阅读量:

C++语言中,拷贝构造函数的调用通常出现在以下三种情形:

  • 利用一个已初始化完成的对象,作为依据来创建一个新的对象
  • 通过值传递的方式将参数传递给函数(在C++中,值传递机制会将实际参数复制一份后传递给形式参数)
  • 以值的形式返回局部对象(在C++中,采用值方式返回时同样会将局部对象复制一份后返回)
复制代码
    class Person {
    public:
    	Person() {
    		cout << "无参构造函数!" << endl;
    		mAge = 0;
    	}
    	Person(int age) {
    		cout << "有参构造函数!" << endl;
    		mAge = age;
    	}
    	Person(const Person& p) {
    		cout << "拷贝构造函数!" << endl;
    		mAge = p.mAge;
    	}
    	//析构函数在释放内存之前调用
    	~Person() {
    		cout << "析构函数!" << endl;
    	}
    public:
    	int mAge;
    };
    
    //1. 使用一个已经创建完毕的对象来初始化一个新对象
    void te

全部评论 (0)

还没有任何评论哟~