• C++中对封装的语法支持——重载运算符


    重载运算符

    1、对于自定义类型,编译器不知道运算规则,而重载运算符会将两个对象相加转换为函数调用。

    2、运算符重载转换的函数调用,函数名字是固定的规则。

      (1) 如果重载+号运算符,函数名字就是:operator+

      (2) 如果重载-号运算符,函数名字就是:operator-

      (3) 如果重载<号运算符,函数名字就是:operator<

      (4) 如果重载!号运算符,函数名字就是:operator!

    3、运算符重载就是在类的内部增加某个运算符函数。

    4、对于+号运算符可以返回任何类型的数据(基本数据类型,自定义数据类型)。

    5、返回值可以有两个选择:值、引用。

    6、返回值要考虑运算符本身的含义是什么(尽量不要违背运算符本身的含义)。

     

    代码实现:

    声明一个Box类和Desk类:

     

    实现Box+Box

     

    实现Box+Desk

     

    实现Box+int(自己制定规则)

     

    实现Box+=Box

     

    实现Box+=int类型

     

    实现Box==Box(返回值类型为bool

     

    实现Box==int类型

     

    实现++Box

     

    实现Box++

     

    运算符重载也可以重载类型转换运算符(规则由自己制定)

    实现Box转换为int类型、bool类型、以及Box转换为Desk类型

     

  • 相关阅读:
    CTF_论剑场-web26
    Bugku-never give up
    Bugku-你必须让他停下来
    Bugku-域名解析
    bugku-web3
    请允许我成为你的夏季——shiro、jdbcInsertall
    HTTP请求/响应报文结构
    SQL常用命令
    dialogs打开对话框选定文件夹,getopenfilename获取文件名
    fso文件夹操作用法实操
  • 原文地址:https://www.cnblogs.com/yyslif/p/11749035.html
Copyright © 2020-2023  润新知