C++中的复制构造函数
来源:互联网 发布:linux 设置ntp时间同步 编辑:程序博客网 时间:2024/05/05 05:04
#include <iostream>/* 复制构造函数是C++中的一种特殊的函数,同构造函数一样对对象进行处理。 在数值的传递中时,他对对象进行复制操作,将原来对象中的数值进行拷贝 它由编译器调用来完成一些基于同一类的其他对象的构建及初始化。 其唯一的参数(对象的引用)是不可变的(const类型)。 此函数经常用在函数调用时用户定义类型的值传递及返回。 拷贝构造函数要调用基类的拷贝构造函数和成员函数。 如果可以的话,它将用常量方式调用,另外,也可以用非常量方式调用。*/using namespace std;class A{public: A(int i,int j) { cout << "执行构造函数!" <<endl; m = i; n = j; } A(A&one) //此处的复制构造函数就是系统默认的复制构造函数实现的机理,()中的A&表示这是一个引用,通过引用可以找到待拷贝的对象的数据 { cout << "执行复制构造函数!" <<endl; n = one.n; m = one.m; } ~A() { cout << "执行析构函数!" <<endl; } void print() { cout << m << " " << n; }private: int m; int n;};int main (void){ A a(2,4); a.print(); cout << endl; A b(a); //需要使用复制构造函数进行a对象的拷贝,复制构造函数也有构造函数的功能 b.print(); return 0;}
执行的结果如下:
可以发现,在执行完复制构造函数之后没有执行构造函数,这说明复制构造函数也有构造函数的功能,这也就是他为什么叫复制构造函数!
- C++: 复制构造函数
- C++中的复制构造函数
- C++中的复制构造函数
- C++中的复制构造函数
- 关于c++中的拷贝构造函数(复制构造函数)
- c++-拷贝构造函数(复制构造函数)
- 类型转换中的复制构造函数应用
- 浅谈c++中的复制构造函数
- 复制构造函数与赋值重载(c++)
- c++primer 3/12----复制构造函数
- C++_避免调用复制构造函数
- C++(22)复制构造函数
- C++:复制构造函数___浅拷贝
- C++:复制构造函数的应用
- 【C++】This指针和复制构造函数
- 【学习C++】学习C++ -> 复制构造函数
- 【C++】拷贝构造函数之浅复制与深复制
- C语言中的构造函数
- light oj 1132 Summing up Powers
- 使用automake自动生成makefile文件(中)
- Python 之ConfigParser
- C# wpf Dispatch invoke
- Web Service初识
- C++中的复制构造函数
- CodeForces 215E Periodical Numbers 数位DP
- JSP学习笔记(二)
- 作业 (29)日
- javascript对下拉列表框(select)的操作
- 强行删除被占用的文件
- java IO之OutputStream
- 二叉树转换为双向链表
- hdu 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活