C++之拷贝构造函数
前段时间一直有个问题困扰着我————什么是构造函数??什么又是拷贝构造函数??
由于小博平时工作中不经常用到拷贝构造函数之类的,而且自身又属于那种碰到问题才会去寻求答案的类型,所以。。。(废话有点多)
------------------------华丽。。华丽。。。。就是华丽的分割线------------------
这里就不讲解构造函数了,直接来看拷贝构造函数,其实这个东西如果真的理解他的原理,那么你第一个念头就是。。。我靠,就这样啊??
首先,从名字上解释,拷贝构造函数(嗯,听起来高大上),其实可以分为两个————拷贝、构造函数
说白了,就是在构造函数的时候,
将其他类整个赋值过来
下面上代码
#include <iostream>
using namespace std;
class productA { public: productA();//这是构造函数 productA(productA& item);//这个就是拷贝构造函数 private: int a; }; //构造函数,赋初始值 productA::productA() { this->a = 1; } //对,没错,这样就算是一个拷贝构造函数 productA::productA(productA* item) { this->a = item->a; } //实现 int main(int argc, char* argv[]) { productA* A = new productA(); productA* B = new productA(A); return 0; }
-------------------------懒得描述的分界线-----------------------------
各位看官若对此有异议,欢迎留言,交流探讨,小博感激不尽!