类中的多种构造函数

本文介绍了类中的几种构造函数类型,包括默认构造函数、转换构造函数、拷贝构造函数和带参构造函数。默认构造函数在子类继承父类时自动调用,转换构造函数允许对象间的类型转换,拷贝构造函数在对象复制时被调用,特别是涉及指针成员时需要注意深拷贝和浅拷贝的区别。带参构造函数则是具有多个参数的构造形式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

构造函数术语:

            1. 默认构造 : 指的是没有形参的构造函数, 由编译器默认提供, 在某些场合编译器需要自动调用一个类对象的构造函数时, 只能调用默认构造.例如: 子类继承了父类,当子类对象被构造的时候, 父类                     的构造也会被自动调用,此时就只能自动调用父类的默认构造

            2.默认构造函数:没有形参,方法体也是空的,目的是构造一个对象

MyClass.h文件
    class MyClass{
      public :
        	MyClass();
    };
MyClass.cpp文件
	#include "MyClass.h"
    MyClass::MyClass(){
    
    }

     2. 转换构造 : 指的是那些只有一个形参,且参数类型是非本类类型的构造函数们. 一般能够显式调用 (例如 `MyClass obj(5)`), 也能隐式调用: `fun(5);` fun的形参是`MyClass`类型 

MyClass.h文件
	class MyClass{
    public :
    	MyClass(int i);
        MyClass(double i);
   	private :
    	double m_Num;        
    };
MyClass.cpp文件
	#include "MyClass.h"
    MyClass::MyClass(int i){
    	//构造函数中可以什么都不实现
    }
    MyClass::MyClass(double n){
    	//构造函数中也可以实现对成员变量的赋值
        this->m_Num = n;
    }
main.cpp文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值