GEGEBEN, dass Sie einen festen Speicherbereich bereits zugewiesen haben, den Sie verwenden möchten, welche C- oder C++ - Bibliotheken können Sie eine dynamische Struktur (z. B. einen Hash) in diesem Speicher speichern?dynamische Strukturen im statischen Speicher?
, d. H. Die Hash-Bibliothek darf keine Aufrufe an malloc oder new enthalten, muss jedoch einen Parameter annehmen, der sie über den Speicherort und die Größe des Speichers informiert, den sie verwenden darf.
(Bonus, wenn die Bibliothek verwendet Offsets anstatt Zeiger intern, falls der gemeinsame Speicher auf unterschiedliche Adressräume in jedem Prozess zugeordnet wird, die es verwendet)
Konnte Ihre Frage mit etwas Code präzisieren? Ich sehe nicht, wie man, sobald der Speicher zugewiesen wurde, etwas darin nicht speichern konnte. – MickaelFM
MickTaiwan: #include Klasse my_shared_memory { public: std :: vector V; } mem; mem.V.insert (mem.V.begin(), 3); printf ("Wert% d ist bei% p, nicht im zugewiesenen Speicher bei% p \ n", mem.V [0], & mem.V [0], &mem); –
OJW