您当前的位置: 首页 >  c++

蔗理苦

暂无认证

  • 4浏览

    0关注

    88博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

2021-09-05 《C++ Primer》学习记录:第14章

蔗理苦 发布时间:2021-09-16 21:35:02 ,浏览量:4

文章目录
      • 第 14 章 重载运算与类型转换
        • 14.1 基本概念
        • 14.2 输入和输出运算符
          • 14.2.1 重载输出运算符
        • 14.3 算术和关系运算符
          • 14.3.1 相等运算符
          • 14.3.2 关系运算符(*)
        • 14.4 赋值运算符
        • 14.5 下标运算符
        • 14.6 递增和递减运算符
        • 14.7 成员访问运算符
        • 14.8 函数调用运算符
          • 14.8.1 lambda 是函数对象
          • 14.8.2 标准库定义的函数对象
          • 14.8.3 可调用对象与 function
        • 14.9 重载、类型转换与运算符
          • 14.9.1 类型转换运算符
          • 14.9.2 避免有二义性的类型转换
          • 14.9.3 函数匹配与重载运算符(*)

第 14 章 重载运算与类型转换 14.1 基本概念

​ 除了重载的函数调用运算符 operator() 之外,其他重载运算符不能含有默认实参。

​ 可以重载的运算符:

(1)选择作为成员或者非成员

​ 下面的准则有助于我们在将运算符定义为成员函数还是普通的非成员函数做出抉择:

  • 赋值(=)、下标([])、调用(())和成员访问箭头(->)运算符必须是成员。
  • 复合赋值运算符一般来说应该是成员,但并非必须。
  • 改变对象状态的运算符或者与给定类型密切相关的运算符,如递增、递减和解引用 运算符,通常应该是成员。
  • 具有对称性的运算符可能转换任意一端的运算对象,例如算术、相等性、关系和位 运算符等,因此它们通常应该是普通的非成员函数。
14.2 输入和输出运算符 14.2.1 重载输出运算符
关注
打赏
1657823434
查看更多评论
立即登录/注册

微信扫码登录

0.1109s