Komplexe Struktur für STL Map

Hallo,
ich möchte einen Dictionary mit Hilfe einer Map realisieren.
Die Map besteht aus einem Key-Feld und einem Prädikat.
Ich möchte als Prädikat eine eigene Klasse benutzen, die die Verbformen (z.B.) beinhaltet.

class VOKABEL
{
VOKABEL(…);
private:
string Infinitiv;
string SimplePast;
string PastParticiple;
//…
};
void main(void)
{
typedef map VOKMAP;
VOKABEL Vok(„blablba“,…);
VOKMAP myMap;
myMap.insert(VOKMAP::value_type(„bla“,Vok));
}

versteht den Source auszugsweise, jedenfalls fuktioniert das nicht. ich weiß nicht wie ich diese map aufblähen kann,
dass schlüsselfeld soll ja wegen dem indexierten zugriff bleiben.
hat einer eine idee?wäre sehr nett!

Prinzipiell müsste der Ansatz für deine Map richtig sein. Daher denke ich, dass ein kleiner Implementierungsfehler passiert ist.
Wie ist die Fehlermeldung des Compilers?

class VOKABEL
{
VOKABEL(…);
private:
string Infinitiv;
string SimplePast;
string PastParticiple;
//…
};
void main(void)
{
typedef map VOKMAP;
VOKABEL Vok(„blablba“,…);
VOKMAP myMap;
myMap.insert(VOKMAP::value_type(„bla“,Vok));
}

Evtl. liegt es an der insert - Funktion. Versuchs mal mit:
myMap[„bla“] = Vok
oder das insert auf zwei Zeilen:
VOKMAP::value_type elem(„bla“, Vok);
myMap.insert(elem);

MfG Andrea