有人知道如何解决此错误
错误C2664:'std :: pair std :: make_pair(_Ty1&&,_ Ty2&&)':无法转换 参数1从'DWORD'到'DWORD&&'
这是完整的代码
#include "stdafx.h"
#ifdef __ITEM_LINK
#include "ItemLink.h"
int CLinkedItemMgr::AddLinkedItem(CItemElem *pItem)
{
if(!pItem)
return 0;
m_mapLinkedItems.insert(make_pair<DWORD,CItemElem*>(++m_dwLinkedItemCount,pItem));
return m_dwLinkedItemCount;
}
CItemElem *CLinkedItemMgr::GetLinkedItem(DWORD dwIndex)
{
map<DWORD,CItemElem*>::iterator it = m_mapLinkedItems.find(dwIndex);
if(it == m_mapLinkedItems.end())
return FALSE;
return it->second;
}
#endif
答案 0 :(得分:2)
如何解决此错误?
删除显式模板参数。喜欢这样:
m_mapLinkedItems.insert(make_pair(++m_dwLinkedItemCount, pItem));