Mit Tupel in unordered_map

Möchte ich ein Tupel, bestehend aus int,char,char in meinem unordered_map. Ich mache das so:

#include <string>
#include <unordered_map>
#include <cstring>
#include <iostream>
#include <tuple>

using namespace std;

tuple <int,char,char> kk;
unordered_map<kk,int> map;

int main()
{
    map[1,"c","b"]=23;
    return 0;
}

aber das gibt mir folgenden Fehler:

map.cpp:9:21: error: type/value mismatch at argument 1 in template parameter list     for template<class _Key, class _Tp, class _Hash, class _Pred, class _Alloc> class    std::unordered_map
map.cpp:9:21: error:   expected a type, got kk
map.cpp:9:21: error: template argument 3 is invalid
map.cpp:9:21: error: template argument 4 is invalid
map.cpp:9:21: error: template argument 5 is invalid
map.cpp:9:26: error: invalid type in declaration before ‘;’ token
map.cpp: In function int main()’:
map.cpp:14:16: error: assignment of read-only location "b"[map]’

Was mache ich falsch in diesem?

InformationsquelleAutor Xara | 2013-12-30
Schreibe einen Kommentar