Verbesserungen für das C++ - stack-Zuweisung?

Anregungen für meinen stack auf Zuweisung?
(Außer für die Vorschläge zu verwenden um eine Klasse mit private/public-Mitglieder)

struct Heap
{
    void* heap_start;
    void* heap_end;
    size_t max_end;

    Heap(size_t size)
    {
        heap_start = malloc(size);
        heap_end = heap_start;
        max_end = size + (size_t) heap_start;
    }

    ~Heap()
    {
        ::free(heap_start);
    }

    void* allocate(size_t bytes)
    {

        size_t new_end = ((size_t) heap_end) + bytes;

        if( new_end > max_end )
            throw std::bad_alloc();

        void* output = heap_end;
        heap_end = (void*) new_end;
        return output;
    }

}
  • Wie ist mein C++ Speicher-pool, WAS?
  • Einfach Fragen, wenn es irgendeinen Weg gibt, es zu optimieren, oder besser Konventionen etc..
  • Okay, Festsetzung der Titel deutlicher machen.
  • Dies ist eine lineare Zuweisung, perfekt, wenn Sie don ' T care über die Freigabe oder freigeben können, alles auf einmal. Ich würde nicht beschreiben es als ein heap.
  • naja nach den Definitionen online cplus.about.com/od/glossar1/g/heap.htm ein heap ist ein beliebiger block des Speichers zu reservieren, dynamische Variablen.
InformationsquelleAutor Unknown | 2009-04-21
Schreibe einen Kommentar