小工具知识网

当前位置: 首页 > 行业知识 > 【C++】类和对象之赋值运算符重载

行业知识

【C++】类和对象之赋值运算符重载

2026-11-08 07:15:43 来源:互联网转载

个人主页 : zxctscl

���章封面来自:艺术家–贤海林

如有转载请先通知

文章目录

  • 1. 前言
  • 2. 赋值运算符重载
  • 3. 前置++和后置++重载
    • 3.1 前置++重载
    • 3.2 后置++重载
    • 4. 日期类的实现
      • 4.1 日期的计算
        • 4.1.1 日期的相加
          • 4.1.1.1 日期+=天数
          • 4.1.1.2 日期+天数
          • 4.1.1.3 +=和+的复用
          • 4.1.2 日期的相减
            • 4.1.2.1 日期-=天数
            • 4.1.2.2 日期-天数
            • 4.1.3 日期-日期
            • 4.2 重载
            • 4.4 附代码
              • 4.4.1 Date.h
              • 4.4.2 Date.cpp
              • 4.4.3 Test.cpp

                1. 前言

                在前面的博客中提到了拷贝构造: 【C++】类和对象之拷贝构造函数篇,和 运算符重载【C++】类和对象之常引用与运算符重载,接下来继续来看赋值运算符重载中的赋值运算符重载。

                2. 赋值运算符重载

                1. 赋值运算符重载格式

                  参数类型:const T&,传递引用可以提高传参效率

                  返回值类型:T&,返回引用可以提高返回的效率,有返回值目的是为了支持连续赋值

                  检测是否自己给自己赋值

                  返回*this :要复合连续赋值的含义

                class Date{public:Date(int year = 1, int month = 1, int day = 1){_year = year;_month = month;_day = day;}Date& operator=(const Date& d){if (this != &d){_year = d._year;_month = d._month;_day = d._day;}return *this;}void Print(){cout Date d1(2024, 1, 29);Date d2(2024, 2, 28);bool ret1 = d1 

上一篇:元气骑士怎么选择服务器?

下一篇:怎么找双体系客户?