C2664 'std::pair std::make_pair(_Ty1 &&,_Ty2 &&)': 인수 1을(를) 'DWORD'에서 'DWORD &&'(으)로 변환할 수 없습니다.

비주얼 스튜디오 2008에서 2015로 마이그레이션 중 아래와 같은 에러가 있었습니다.

C2664 'std::pair<unsigned long,unsigned long> std::make_pair<DWORD,DWORD>(_Ty1 &&,_Ty2 &&)': 인수 1을(를) 'DWORD'에서 'DWORD &&'(으)로 변환할 수 없습니다.

std::multimap<DWORD, DWORD> myMultiMap;
myMultiMap.insert(std::make_pair<DWORD, DWORD>(dword1, dword2));

멀티맵에 insert를 하는데 에러가 발생하네요. 붉은색 부분의 템플릿 타임부분을 삭제해주면 됩니다.

myMultiMap.insert(std::make_pair(dword1, dword2));

댓글

이 블로그의 인기 게시물

CMake Windows에 설치하기

'xxx.exe' 프로그램을 시작할 수 없습니다. 지정된 파일을 찾을 수 없습니다.

크로스 스레드 작업이 잘못되었습니다. xxx 컨트롤이 자신이 만들어진 스레드가 아닌 스레드에서 액세스되었습니다