firemail

标题: 结构体做为map的key [打印本页]

作者: jimu    时间: 2016-5-2 12:09
标题: 结构体做为map的key
  1. typedef struct tagRoadKey
  2. {
  3.      int nType;
  4.      int nScale;

  5.      bool operator <(const tagRoadKey& other) const
  6.      {
  7.          if (nType < other.nType)        //类型按升序排序
  8.          {
  9.              return true;
  10.          }
  11.          else if (nType == other.nType)  //如果类型相同,按比例尺升序排序
  12.          {
  13.              return nScale < other.nScale;
  14.          }
  15.          
  16.          return false;
  17.      }
  18. }ROADKEY;



  19. typedef struct _stPmssKey
  20. {
  21.         __int64 NeSysId;
  22.         int nPsmmKeep;
  23.         int nPsmmPilotSet;
  24.         int nCarr;
  25.         int nPsmmCell;
  26.         int nPsmmSector;
  27.         bool operator < (const _stPmssKey& other) const
  28.         {
  29.                 if (NeSysId != other.NeSysId)        
  30.                 {
  31.                         return NeSysId < other.NeSysId;
  32.                 }
  33.                 else if (nPsmmKeep != other.nPsmmKeep)  
  34.                 {
  35.                         return nPsmmKeep < other.nPsmmKeep;
  36.                 }
  37.                 else if (nPsmmPilotSet != other.nPsmmPilotSet)  
  38.                 {
  39.                         return nPsmmPilotSet < other.nPsmmPilotSet;
  40.                 }
  41.                 else if (nCarr != other.nCarr)  
  42.                 {
  43.                         return nCarr < other.nCarr;
  44.                 }
  45.                 else if (nPsmmCell != other.nPsmmCell)  
  46.                 {
  47.                         return nPsmmCell < other.nPsmmCell;
  48.                 }
  49.                 else if (nPsmmSector != other.nPsmmSector)  
  50.                 {
  51.                         return nPsmmSector < other.nPsmmSector;
  52.                 }
  53.                 return false;
  54.         }

  55. } stPmssKey,*PPmssKey;
复制代码





欢迎光临 firemail (http://firemail.wang:8088/) Powered by Discuz! X3