Als «allocator» getaggte Fragen

16
Überzeugende Beispiele für benutzerdefinierte C ++ - Allokatoren?
Was sind einige wirklich gute Gründe, sich std::allocatorfür eine kundenspezifische Lösung zu entscheiden? Sind Sie auf Situationen gestoßen, in denen dies für Korrektheit, Leistung, Skalierbarkeit usw. unbedingt erforderlich war? Irgendwelche wirklich klugen Beispiele? Benutzerdefinierte Allokatoren waren schon immer eine Funktion der Standardbibliothek, für die ich nicht viel Bedarf hatte. Ich …

3
polymorphic_allocator: wann und warum sollte ich es verwenden?
Hier ist die Dokumentation zu cppreference , hier ist der Arbeitsentwurf. Ich muss zugeben, dass ich nicht verstanden habe, was der eigentliche Zweck ist polymorphic_allocatorund wann / warum / wie ich es verwenden soll. Als Beispiel pmr::vectorhat der folgende Signatur: namespace pmr { template <class T> using vector = std::vector<T, …
120 c++  allocator  c++17 

3
Wird der Deleter eines shared_ptr im vom benutzerdefinierten Allokator zugewiesenen Speicher gespeichert?
Angenommen, ich habe eine shared_ptrmit einem benutzerdefinierten Allokator und einem benutzerdefinierten Löscher. Ich kann im Standard nichts finden, das darüber spricht, wo der Deleter gespeichert werden soll: Es heißt nicht, dass der benutzerdefinierte Allokator für den Speicher des Deleters verwendet wird, und es heißt nicht, dass dies nicht der Fall …


2
Kann ich einen benutzerdefinierten Allokator für std :: array für sichere kryptografische Schlüssel verwenden?
Ich weiß, dass std::arrayder Stapel vollständig zugeordnet ist, aber diese Frage ist durch Sicherheitsbedenken motiviert, die zwei Dinge erfordern: Die Daten in std::arraywerden bei Zerstörung auf Null gesetzt oder zufällig ausgewählt Die eingehenden Daten std::arraywerden gesperrt , sodass sie weder beim Absturz noch im Swap-Speicher auf die Festplatte übertragen werden …

1
Vom Benutzer bereitgestellte std :: allocator-Spezialisierung
Klassenvorlagen im ::stdNamespace können im Allgemeinen durch Programme für benutzerdefinierte Typen spezialisiert werden. Ich habe keine Ausnahme von dieser Regel für gefunden std::allocator. Darf ich mich also auf std::allocatormeine eigenen Typen spezialisieren? Und wenn ich darf, muss ich dann alle Mitglieder der std::allocatorprimären Vorlage bereitstellen , da viele von ihnen …
8 c++  c++17  allocator 
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.