Map mit welchem Typ?



  • Ich bin ein wenig eingerostet und krieg das gerade nicht in meinem Kopf zusammen, ich brauche ein map in einer klasse, was als key ein std::pair von zwei strings und als value eni vector vom Typ T nimmt, wie sieht dann die deklaration aus?

    std::map<std::pair<const std::string &,const std::string &>,std::vector<T>> configSets_;
    

    oder

    std::map<const std::pair<const std::string ,const std::string > &,std::vector<T>> configSets_;
    

    oder

    std::map<const std::pair<const std::string &,const std::string &> &,std::vector<T>> configSets_;
    

    oder noch etwas anderes? Natürlich mit so wenig kopieren wie möglich
    So etwas wie ohne referenzen, weil die keinen Sinn ergeben? 😃

    std::map<const std::pair<const std::string ,const std::string > ,std::vector<T>> configSets_;
    


  • Da der Key einer Map sowieso konstant ist, wie wäre es mit:

    std::map<std::pair<std::string,std::string>,std::vector<T> >
    


  • Mal ne doofe Noob-Frage: Was ist std::pair? Und was ist der Unterschied zur std::map?
    mfg



  • std::pair ist ein Datentyp der zwei Elemente halten kann und ich verwende halt zwei elemente zum referenzieren von Objekten in einer map


Anmelden zum Antworten