C++中构造函数和复制构造函数的理解

本文详细介绍了C++中的构造函数和复制构造函数。构造函数用于对象初始化,当未定义构造函数时,编译器会自动生成默认构造函数。如果定义了全参数默认值的构造函数,相当于默认构造函数,不能同时定义无参构造函数。复制构造函数在对象复制或初始化时被调用,如作为函数参数、返回值或新对象初始化。调用复制构造函数的三种情况包括直接初始化、形参初始化和函数返回值。复制构造函数的参数必须为引用,以防止无穷递归调用。
摘要由CSDN通过智能技术生成

构造函数

首先说什么是构造函数。构造一个对象,就必须有一个构造函数供它初始化时调用,如果你没有定义构造函数,则编辑器会自动生成一个默认构造函数。如果构造的对象有参数,则初始化时会调用对应的有参数的构造函数,否则就会调用无参数的构造函数,所以一般会写一个无参数的构造函数供别人修改程序使用。如果自己已经定义一个构造函数,则编辑器不会再自己生成默认构造函数。
例如:

class point
{
   
public:
	point(int x, int y);//声明一个有参数的构造函数
	point();//声明一个无参数的构造函数
private :
	int x; 
	int y;
 };
point::point(int x, int y){
   } //有参数的构造函数
point::point(){
   }//无参数的构造函数
int main(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值