Pytania otagowane jako allocator

16
Ciekawe przykłady niestandardowych alokatorów w C ++?
Jakie są naprawdę dobre powody, aby zrezygnować std::allocatorz niestandardowego rozwiązania? Czy spotkałeś się z sytuacjami, w których było to absolutnie konieczne dla poprawności, wydajności, skalowalności itp.? Jakieś naprawdę sprytne przykłady? Niestandardowe podzielniki zawsze były cechą Biblioteki Standardowej, której nie potrzebowałem. Zastanawiałem się tylko, czy ktoś tutaj na SO mógłby podać …

3
polymorphic_allocator: kiedy i dlaczego powinienem go używać?
Oto dokumentacja dotycząca cppreference , tutaj jest robocza wersja robocza. Muszę przyznać, że nie rozumiałem, jaki jest prawdziwy cel polymorphic_allocatori kiedy / dlaczego / jak mam go używać. Na przykład pmr::vectorma następujący podpis: namespace pmr { template <class T> using vector = std::vector<T, polymorphic_allocator<T>>; } Co polymorphic_allocatoroferuje ta oferta? Co …
122 c++  allocator  c++17 

3
Czy separator shared_ptr jest przechowywany w pamięci przydzielonej przez niestandardowy program przydzielający?
Powiedzmy, że mam shared_ptrniestandardowy alokator i niestandardowy usuwacz. Nie mogę znaleźć w standardzie niczego, co mówi o tym, gdzie powinien być przechowywany usuwacz: nie mówi, że niestandardowy alokator zostanie użyty do pamięci usuwacza, i nie mówi, że nie będzie. Czy jest to nieokreślone, czy coś mi brakuje?


2
Czy mogę użyć niestandardowego alokatora dla std :: array dla bezpiecznych kluczy kryptograficznych?
Wiem, że std::arrayjest całkowicie przydzielony na stosie, ale to pytanie jest uzasadnione względami bezpieczeństwa, które wymagają dwóch rzeczy: Dane std::arrayzostaną zerowane lub losowo po zniszczeniu Dane std::arrayzostaną zablokowane , tak aby nigdy nie trafiały na dysk ani w przypadku awarii, ani w pamięci wymiany Zwykle std::vectorrozwiązaniem jest utworzenie niestandardowego programu …
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.