C/C++教程

c++ 中结构体重载操作符的三种方式

本文主要是介绍c++ 中结构体重载操作符的三种方式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
//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

这篇关于c++ 中结构体重载操作符的三种方式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!