array lists dont have cons/destuctors anymore. RAII is not helpful

This commit is contained in:
FelixBrendel
2020-01-15 00:14:27 +01:00
parent 7d8eabf479
commit 7b128b33c9
3 changed files with 5 additions and 4 deletions
+3 -3
View File
@@ -7,13 +7,13 @@ struct Array_List {
int length;
int next_index;
Array_List(int initial_capacity = 16) {
void alloc(int initial_capacity = 16) {
data = (type*)malloc(initial_capacity * sizeof(type));
next_index = 0;
length = initial_capacity;
}
~Array_List() {
void dealloc() {
free(data);
data = 0;
}
@@ -52,7 +52,7 @@ struct Array_List {
}
void reserve(unsigned int count) {
if (next_index+count <= length) {
if (next_index+count <= (unsigned int)length) {
length *= 2;
data = (type*)realloc(data, length * sizeof(type));
}
+2 -1
View File
@@ -35,6 +35,7 @@ class Bucket_Allocator {
public:
Bucket_Allocator(unsigned int bucket_size, unsigned int initial_bucket_count) {
this->free_list.alloc();
this->bucket_size = bucket_size;
next_index_in_latest_bucket = 0;
next_bucket_index = 0;
@@ -48,7 +49,7 @@ public:
for (unsigned int i = 0; i <= next_bucket_index; ++i) {
free(buckets[i]);
}
this->free_list.dealloc();
free(buckets);
}
Executable → Regular
View File