Bất kỳ đề xuất nào cho bộ cấp phát dựa trên stack của tôi? (Trừ gợi ý để sử dụng một lớp với các thành viên private/public)Cải tiến cho bộ cấp phát ngăn xếp C++ này?
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;
}
}
Bộ nhớ C++ của tôi như thế nào? – paxdiablo
Chỉ cần tự hỏi nếu có bất kỳ cách nào để tối ưu hóa nó, hoặc các quy ước tốt hơn, vv .. – Unknown
Được rồi, sửa tiêu đề để làm cho nó rõ ràng hơn. – paxdiablo