का उपयोग कर रहा एक पुराने परियोजना की खुदाई और यह संकलन चाहता था, लेकिन प्राप्त कई त्रुटियाँ, एक c2664 जा रहा है उन लोगों में से कुछ:c2664 जब make_pair
error C2664: 'std::make_pair' : cannot convert parameter 1 from 'CUser *' to 'CUser *&&'
error C2664: 'std::make_pair' : cannot convert parameter 1 from 'unsigned long' to ' unsigned long &&'
प्रासंगिक कोड भागों हैं:
//typedef for the userdata map
typedef std::map<unsigned long, std::pair<CUser*,userstatus*>> UserDataMapType;
//...
Inc::incret CUserManager::AddUser(unsigned long ID, CUser* pUser, userstatus* pUserStatus)
{
//...
std::pair<UserDataMapType::iterator, bool> ret = m_mapUserData.insert(std::make_pair<unsigned long, std::pair<CUser*, userstatus*>>(ID, std::make_pair<CUser*, userstatus*>(pUser, pUserStatus)));
//...
}
मैंने फ़ंक्शन पैरामीटर const
बनाने की कोशिश की, लेकिन इससे मदद नहीं मिली।
यह वीएस -2010 में बस ठीक है।
कृपया मुझे यह जानने में सहायता करें कि इसका क्या कारण है और इसे कैसे हल किया जाए।