【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); // 调用带参的构造函数
相关推荐
txinyu的博客3 分钟前
解析muduo源码之 SocketsOps.h & SocketsOps.cc
c++
淮北49412 分钟前
pip虚拟环境包的问题
开发语言·python·pip
dear_bi_MyOnly15 分钟前
【多线程——线程状态与安全】
java·开发语言·数据结构·后端·中间件·java-ee·intellij-idea
常年游走在bug的边缘16 分钟前
掌握JavaScript作用域:从函数作用域到块级作用域的演进与实践
开发语言·前端·javascript
-Springer-16 分钟前
STM32 学习 —— 个人学习笔记2-2(新建工程)
笔记·stm32·学习
jiaguangqingpanda21 分钟前
Day36-20260204
java·开发语言
ctyshr26 分钟前
C++编译期数学计算
开发语言·c++·算法
tb_first27 分钟前
万字超详细苍穹外卖学习笔记4
java·spring boot·笔记·学习·spring·mybatis
打码的猿30 分钟前
Qt对话框不锁死主程序的方法
开发语言·qt
努力写代码的熊大44 分钟前
c++异常和智能指针
java·开发语言·c++