【C++基础】构造函数

一,构造函数概念

概念:函数名与类名相同,且没有返回值类型,这就是构造函数,它承担着类初始化的工作。

构造函数虽然名叫构造,但它并不是开空间创建对象,而是初始化对象。

分类:默认构造函数、一般构造函数、拷贝构造函数、转换构造函数、移动构造函数。

特点:

1,函数名与类名相同

2,无返回值

3,对象实例化时编译器自动调用对应的构造函数

4,构造函数可以重载

例:

复制代码
 class Date
 {
  public:
      // 1.无参构造函数
      Date()
     {}
  
      // 2.带参构造函数
      Date(int year, int month, int day)
     {
          _year = year;
          _month = month;
          _day = day;
     }
  private:
      int _year;
      int _month;
      int _day;
 };
  
  void TestDate()
 {
      Date d1; // 调用无参构造函数
      Date d2(2015, 1, 1); // 调用带参的构造函数
相关推荐
必须会一定会2 小时前
Agent Plugins 1.0实战:plugin.json、skills、mcp.json目录结构与迁移
开发语言·人工智能·ai编程
Linux-lucky2 小时前
21-Linux学习之旅之HTTPS和安全加固
linux·运维·学习·ubuntu·https
St_rive2 小时前
Page Object设计模式
java·开发语言·设计模式
wp123_13 小时前
硬件元器件笔记|IPX8 防水 Type‑C 母座安费诺 124018802112A 与 TONEVEE TY48086‑24A 分析
c语言·开发语言·笔记
wuyk5553 小时前
4.树:一对多的层次数据结构
开发语言·数据结构·stm32·单片机
luj_17684 小时前
桥牌思维启示:系统设计的模块化架构
c语言·开发语言·c++·经验分享·算法
会周易的程序员4 小时前
aiDgePLC iec61131 虚拟机 完整使用文档
c++·物联网·架构·st·iec61131
学运维的Kysan4 小时前
暑假运维学习打卡第二十六天8.17
学习
小小龙学IT5 小时前
Boost.Beast 深度实战:基于 Asio 的开源 C++ HTTP/WebSocket 协议库
c++·websocket·http