CMap使用自定义类的例子

//Sample   Code :
//  This   is   a   sample   declaration   of   a   CMap   that   uses   a   user-defined   class   for   as   data-type   for   a   Cmap:    

#include   <afxtempl.h>  

class   CEmployee   :   public   CObject  
{  
public:  
    CString   m_firstName;  
    CString   m_lastName;  
   
public:  
    CEmployee(){   };  
   
    //   Copy   constructor   required   by   Cmap.  
    CEmployee(const   CEmployee&   n)  
    {  
        m_firstName   =   n.m_firstName;  
        m_lastName   =   n.m_lastName;  
    }  
   
   
    //   Operator=   is   required   by   Cmap.  
    CEmployee&   operator=(const   CEmployee&   n)  
    {  
        m_firstName   =   n.m_firstName;  
        m_lastName   =   n.m_lastName;  
        return   *this;  
    }  
   
    BOOL   AFXAPI   operator==(const   CEmployee&   n)   const  
    {  
        return   m_firstName   ==   n.m_firstName  
            &&   m_lastName   ==   n.m_lastName;  
    }  
};  

template<>  
inline   UINT   AFXAPI   HashKey(CEmployee&   key)  
{  
    return   HashKey((LPCTSTR)key.m_lastName)   +  
        HashKey((LPCTSTR)key.m_firstName);  
}  

//   Declare   the   CMap   object.  
CMap<CEmployee,   CEmployee&,   CEmployee,   CEmployee&>   EmployeeMap;    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值