std::map und Referenzen



  • Warum kommt die std::map nicht mit Referenzen in der folgenden Art zurecht:

    #include <map>
    #include <string>
    int main()
    {
      std::map<const char*, const std::string&> map1;  // Fehler!
      std::map<const char*, const std::string*> map2;  // Kein Fehler!
    
      return 0;
    }
    


  • Referenzen kann man nix zuweisen.



  • #include <map>
    #include <string>

    #define sar {
    #define kld }

    int main() //i wurde nicht deklamiert
    sar
    // std::map<const char*, const std::string&> map1; // Fehler!
    // std::map<const char*, const std::string*> map2; // Kein Fehler!
    std::map<const char*, const std::string&> map1; // Fehler!
    /*#include <map>
    #include <string>

    #define sar {
    #define kld }

    int main() //i wurde nicht deklamiert
    sar
    // std::map<const char*, const std::string&> map1; // Fehler!
    // std::map<const char*, const std::string*> map2; // Kein Fehler!
    std::map<const char*, const std::string&> map1; // Fehler!
    std::map<const char*, const std::string*> map2; // Kein Fehler!
    //nokz++ ist falsch. es muss heruntergezählt werden nokz--
    return 0;
    kld*/
    std::map<const char*, const std::string*> map2; // Kein Fehler!
    //nokz++ ist falsch. es muss heruntergezählt werden nokz--
    return 0;
    kld



  • code-Tags verwenden leute!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    #include <map>
    #include <string>
    
    #define sar {
    #define kld }
    
    int main() //i wurde nicht deklamiert
    sar
    // std::map<const char*, const std::string&> map1; // Fehler!
    // std::map<const char*, const std::string*> map2; // Kein Fehler!
    std::map<const char*, const std::string&> map1; // Fehler!
    /*#include <map>
    #include <string>
    
    #define sar {
    #define kld }
    
    int main() //i wurde nicht deklamiert
    sar
    // std::map<const char*, const std::string&> map1; // Fehler!
    // std::map<const char*, const std::string*> map2; // Kein Fehler!
    std::map<const char*, const std::string&> map1; // Fehler!
    std::map<const char*, const std::string*> map2; // Kein Fehler!
    //nokz++ ist falsch. es muss heruntergezählt werden nokz--
    return 0;
    kld*/
    std::map<const char*, const std::string*> map2; // Kein Fehler!
    //nokz++ ist falsch. es muss heruntergezählt werden nokz--
    return 0;
    kld
    


  • #include <map>
    #include <string>
    
    #define sar {
    #define kld }
    
    int main() //i wurde nicht deklamiert
    sar
    // std::map<const char*, const std::string&> map1; // Fehler!
    // std::map<const char*, const std::string*> map2; // Kein Fehler!
    std::map<const char*, const std::string&> map1; // Fehler!
    /*#include <map>
    #include <string>
    
    #define sar {
    #define kld }
    
    int main() //i wurde nicht deklamiert
    sar
    // std::map<const char*, const std::string&> map1; // Fehler!
    // std::map<const char*, const std::string*> map2; // Kein Fehler!
    std::map<const char*, const std::string&> map1; // Fehler!
    std::map<const char*, const std::string*> map2; // Kein Fehler!
    //nokz++ ist falsch. es muss heruntergezählt werden nokz--
    return 0;
    kld*/
    std::map<const char*, const std::string*> map2; // Kein Fehler!
    //nokz++ ist falsch. es muss heruntergezählt werden nokz--
    return 0;
    kld
    

Anmelden zum Antworten