首页 > 其他分享 >简单理解重载运算符&位运算

简单理解重载运算符&位运算

时间:2023-03-01 17:46:09浏览次数:38  
标签:const 运算 自定义 运算符 重载 dis

重载运算符

作用

重载运算符的作用大致可以理解为自定义一个运算法则,比如当我们在使用结构体的时候,我们有时候会用到优先队列,但是优先队列并不能对于结构体使用,所以这个时候我们就需要用到重载运算符来自定义一下运算法则(在优先队列里其实是比较法则)。

如何理解?

来看下面这个代码。

struct sb{
	int now,dis;
	bool operator < (const sb &a)const{return this.dis > a.dis;}
}now;

看上去很难理解的样子,其实里面的小于号就是我们重载的运算符const及后面大括号里面的东西就是我们重新自定义的比较法则,比如这里是一个大根堆,里面的小于号被改成了当前元素大于其他元素,也就是说,把原来小的元素在底下改成了大的元素在底下,达到了自定义运算符的目的。

标签:const,运算,自定义,运算符,重载,dis
From: https://www.cnblogs.com/Multitree/p/17169102.html

相关文章

  • ITK 形态学中的开运算和闭运算 腐蚀 膨胀
    一.图像形态学处理——膨胀和腐蚀腐蚀在二值图像的基础上做“收缩”或“细化”操作;膨胀在二值图像的基础上做“加长”或“变粗”的操作。 什么是二值图像呢?把一幅图片......
  • js格式化日期 js加减日期 js时间运算
    js格式化日期/***给Date的原型添加格式化时间的方法*@param{Object}format要格式化的类型*@param{Object}daynum要加减的时间的天数,加时间填正整数,减时间填......
  • 位运算-洛谷P1469 找筷子
    位运算的符号:与(&) and当两个数在二进制下对应位数上均为 11 时,得到的结果为 11.或(|) or当两个数在二进制下对应位数上有一个为 11 时,得到的结果为 11.......
  • 【位运算】出现次数为1的数 1
    题目链接:出现过一次的数给定一个数组,对于只有一个元素仅出现一次,其余元素都恰好出现两次解题思路我们知道对于异或运算,有如下性质:x^y^y=x于是我们可以将所有元素异或起......
  • 【位运算】出现次数为1的数
    题目链接(出现次数为1的数)解题思路已知有规律:x^y^y=x,可将所有元素异或到一起得到两出现一次的元素的异或结果(分别记为a和b,则异或结果为a^b)由异或的规律可知:a^b二进制位......
  • c语言运算符优先级实例解析
    壹:  对于优先级:算术运算符>关系运算符>逻辑运算符>赋值运算符。逻辑运算符中“逻辑非!”除外。这是程序员总结出来的最快的学习方式。可在实战中,还是经常遇......
  • 【web开发基础】PHP快速入门(5)-PHP运算符之算术运算符和字符串运算符详解
    前言PHP开发基础开速入门系列《​【web开发基础】php开发基础快速入门(1)-PHP介绍及开发环境快速安装和基本使用介绍​》《​【web开发基础】php开发基础快速入门(2)......
  • 位运算
    1.2的幂boolisPowerOfTwo(intn){intsum=0;while(n){if(n&1)sum++;if(sum>1)returnfalse;n>>=1;......
  • 运算符
    算术运算符:......
  • javascript的void运算符
    1<!DOCTYPEhtml>2<htmllang="en">34<head>5<metacharset="UTF-8">6<metahttp-equiv="X-UA-Compatible"content="IE=edge">7......