C++에서지도에 세 개의 매개 변수를 전달하고 싶습니다. 삽입 기능을 사용하는 동안 오류가 표시됩니다. 이것에 대한 대체 방법이 있습니까? 나는 ((정수 정수) 문자열)지도에 세 개의 매개 변수를 전달하면 오류가 표시됩니다.
int main()
{
map < map <int, int>, char[50] > Code;
int TestCases,Queries,a,b;
char Name[50];
scanf("%d",&TestCases);
for (int i = 0; i < TestCases; i++)
{
scanf("%d %d %s",&a,&b,Name);
Code.insert(make_pair(make_pair(a,b),Name[50]));// Error Line
}
}
나는 다음과 같은 오류 얻을 쌍 만들고 싶어 :
C2664: 'void std::_Tree
<
std::_Tmap_traits<
_Kty,_Ty,_Pr,_Alloc,false>>
::insert(std::initializer_list<const _Kty,_Ty>>
)' : cannot convert argument 1 from 'std::pair<
std::pair<
int,int>
,char>
' to 'std::pair<
const _Kty,_Ty>
다른 컨테이너의 키로 맵과 std :: map이 이상하고 성능에 영향을 미칠 수 있습니다. 이것은 의도 한 목표입니다. – NetVipeC
완전한 오류 메시지는 아닙니다. – Yakk