diff options
| author | Mistivia <i@mistivia.com> | 2025-12-25 04:06:18 +0800 |
|---|---|---|
| committer | Mistivia <i@mistivia.com> | 2025-12-25 04:06:18 +0800 |
| commit | 1992412fd007600856896924f04d460bb212c9f1 (patch) | |
| tree | ed4ecb5e3106a004588c1a0b00c0a87d6e089b1a /vec.h | |
| parent | 1b59dbec2cc58b6b2404cf1732239e70a4915c69 (diff) | |
add create interface
Diffstat (limited to 'vec.h')
| -rw-r--r-- | vec.h | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -15,6 +15,7 @@ } T##Vector; \ \ void T##Vector_init(T##Vector *self); \ + T##Vector T##Vector_create(); \ void T##Vector_push_back(T##Vector *self, T elem); \ void T##Vector_insert_before(T##Vector *self, int n, T elem); \ void T##Vector_pop(T##Vector *self); \ @@ -36,7 +37,11 @@ self->cap = 16; \ self->size = 0; \ } \ - \ + T##Vector T##Vector_create() { \ + T##Vector self; \ + T##Vector_init(&self); \ + return self; \ + } \ void T##Vector_push_back(T##Vector *self, T elem) { \ if (self->size + 1 > self->cap) { \ self->buffer = realloc(self->buffer, sizeof(T) * self->cap * 2); \ |
