//c++ 中结构体重载操作符的三种方式 struct node{ int x; node(int val):x(val){} bool operator<(const node &a)const{ return x < a.x ; } }; struct node1{ int xx; node1(int val):xx(val){} friend bool operator<(const node1 &a, const node1 &b) { return a.xx < b.xx; } }; struct node2{ int xy; node2(int val):xy(val){} }; bool operator<(const node2 a, const node2 b) { return a.xy < b.xy; } int main(int argc, char** argv) { node tm1(1), tm2(2); std::cout<<(tm1<tm2)<<std::endl; node1 ttm1(5), ttm2(2); std::cout<<(ttm1<ttm2)<<std::endl; node2 tttm1(7), tttm2(2); std::cout<<(tttm1<tttm2)<<std::endl; return 0; }
编译
运行
./test
1
0
0