C++ 結構體重載運算符


聽說這個東西有很多種寫法什么的,來不及了(要退役了),先整一個之前用到的,可能用到的頻率比較高的東西上來。

struct node{
    ll x,y;
};
bool operator < (const node& a,const node& b)
{
    if(a.x<b.x) return true;
    else if(a.x==b.x&&a.y<b.y) return true;
    else return false;
}

 

這種寫法是當時要定義一個什么

map<node,int> vis;

然后$map$里面是紅黑樹(所以$map$也自帶排序來着),這里結構體的小於號要重載,或者給優先隊列定義一個比較法則,否則會$CE$。

由於$vis$只是一個標記數組,所以沒有管排序是從小到大還是從大到小什么的。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM