C/Cpp / 构造函数种类
2018-03-15 创建人:Ruo_Xiao
开发环境:VS2010
邮箱:xclsoftware@163.com2018-04-16 修改人:Ruo_Xiao
添加对类型转换构造函数隐式转换的抑制使用的说明,即:explicit。2019-06-19 修改人:Ruo_Xiao
修正对转换构造函数的说明。
一、默认构造函数(无参数构造函数)
Father()
{std::cout<<"我是默认构造函数!"<<std::endl;std::cout<<std::endl;
}
2、一般构造函数(重载构造函数)
- 这种构造函数类中可以有多个,但是形参类型或者个数不能相同,需要满足C++重载原理。
- 栗子:
Father(int i,double d)
{cout<<"我是一般构造函数!"<<endl;cout<<endl;
}
3、复制构造函数,即:拷贝构造函数
- 拷贝构造函数参数为类对象本身的引用,用于根据一个已存在的对象复制出一个新的该类的对象。
- 若没有显示的写拷贝构造函数,则系统会在适当的时候创建一个默认的拷贝构造函数
- 栗子:
Father(const Father &F)
{cout<<"我是复制构造函数!"<<endl;cout<<endl;
}
4、转换构造函数
- 条件:构造函数只有一个参数,而且该参数不是本类的const引用。
- 作用:相当于C语言隐式类型转换,相当于 类Test t = 100; // 就是t = Test(100);
- 栗子:
Father(int i)
{cout<<"我是转换构造函数!"<<endl;cout<<endl;
}
- 上述属于隐式转换,若不编写者不想让调用者执行该操作,即:必须显示调用。则在构造函数声明前面加上“explicit”即可。
5、等号运算符重载构造函数(赋值构造函数)
- 作用:两个对象的数据成员进行赋值。
- 条件:等号两边的对象必须已经创建。
- 栗子:
Father &operator=( const Father &rhs )
{cout<<"我是等号运算符重载构造函数!"<<endl;return *this;
}
(SAW:Game Over!)
C/Cpp / 构造函数种类相关推荐
- C++:构造函数,析构函数及友元函数
我们先从一个题来开始:这是改正之后的样子. #include <iostream> using namespace std; class MyClass { public:MyClass( ...
- Android SO逆向-对象的构造函数与析构函数
0x00 这一节我们主要讨论对象的构造函数和析构函数的汇编实现. 0x01 我们先直接看C++代码: #include "com_example_ndkreverse4_Lesson4.h& ...
- 数据结构知识点总结整理
数据结构知识点总结整理 0.常考基础必知必会 A. 排序:排序有几种,各种排序的比较,哪些排序是稳定的,快排的算法: B. 查找:哈希查找.二叉树查找.折半查找的对比,哈希映射和哈希表的区别? C. ...
- 程序员笔试笔记c++
0.常考基础必知必会 A. 排序:排序有几种,各种排序的比较,哪些排序是稳定的,快排的算法: B. 查找:哈希查找.二叉树查找.折半查找的对比,哈希映射和哈希表的区别? C. 链表和数组的区别,在什么 ...
- 职工管理系统--基于C++多态
目录 1.管理系统需求 2.创建项目 2.1 创建项目 2.2 添加文件 3.创建管理类 3.1创建文件 3.2 头文件实现 3.3 源文件实现 4.菜单功能 4.1 添加成员函数 4.2 菜单功能实 ...
- 黑马程序员C++职工管理系统
基础知识(面向对象编程) C++程序在执行时,将内存大方向划分为**4个区域** - 代码区:存放函数体的二进制代码,由操作系统进行管理的 - 全局区:存放全局变量和静态变量以及常量 - 栈区:由编译 ...
- 《黑马程序员》职工管理系统实战
职工管理系统 源码成品直达:https://download.csdn.net/download/Augenstern_QXL/19080725?spm=1001.2014.3001.5501 已经设 ...
- C++习题二:职工管理系统:
职工管理系统 1.管理系统需求 职工管理系统可以用来管理公司内所有员工的信息 本教程主要利用cpp来实现一个基于多态的职工管理系统 公司中职工分为三类:普通员工.经理.老板,显示信息时,需要显示职工编 ...
- 用c++实现职工管理系统
首先带大家看看文件的结构以及树状图 以下是具体的思路: 1.管理系统需求 职工管理系统可以用来管理公司内所有员工信息 本教程主要利用c++来实现一个基于多态的职工管理系统 公司中职工分为三类:普通员工 ...
最新文章
- 施工日志管理软件app_工程人必备的手机APP,个个能解燃眉之急
- Zabbix3.X-Zabbix _Agent主动模式的监控(Active)
- 洛谷P4292:重建计划(点分治、单调队列)
- 利用OpenCV实现人脸检测
- c语言中最常用的四种数据类型,计算机中有哪几种常见数据类型
- 基于Jupyter完成Iris数据集的 Fisher线性分类,学习数据可视化技术
- String,StringBuffer,StringBulilder之间的区别
- ESP32 开发笔记(十一)使用 ESP32 做为 WebServer
- 工业相机——点阵相机与线阵相机
- Android 杂记 - 存货盘点用的客户端
- 国际植物基博览会2022年6月首次亮相上海;海瑞温斯顿珠宝王国在北京开设新零售沙龙 | 知消...
- 一行代码实现网站移动化的原理与实现
- freeswitch配置软电话
- android中华为、小米手机设置头像裁剪失败问题
- 最全iPhone启动图尺寸(包含 XS Max XR)
- 实战演练-java+微信小程序实现省市区三级联动
- 程序员到底应该学什么?!
- 2022-2028全球与中国移动网络运营商市场现状及未来发展趋势
- java并发学习28:有序性
- ppt6计算机考试,全国计算机考试第6章 过程.ppt