From 9914e150ef1aee1867ebdcba0c83b455048386c0 Mon Sep 17 00:00:00 2001 From: TermiNexus Date: Tue, 29 Sep 2026 16:59:46 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=86=20vector=20=E6=95=B4=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vector.vp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/vector.vp b/vector.vp index 62da1c4..dae920d 100644 --- a/vector.vp +++ b/vector.vp @@ -1,5 +1,3 @@ -import t, c -from stdint import * import memhub @@ -23,7 +21,7 @@ class Vector[T](): self._grow() if self.length >= self.capacity: return offset: uint64 = uint64(self.data) + self.length * self.elem_size - dst: T* = (T*)offset # typed pointer: store whole T, not its first byte + dst: T* = T*(offset) # typed pointer: store whole T, not its first byte *dst = value self.length += 1 @@ -40,14 +38,14 @@ class Vector[T](): def get(self, index: sizet) -> T: if self.data == None: return T(0) offset: uint64 = uint64(self.data) + index * self.elem_size - typed_ptr = (T*)offset + typed_ptr = T*(offset) return *typed_ptr def set(self, index: sizet, value: T): if index >= self.length: return if self.data == None: return offset: uint64 = uint64(self.data) + index * self.elem_size - dst: T* = (T*)offset # typed pointer: store whole T, not its first byte + dst: T* = T*(offset) # typed pointer: store whole T, not its first byte *dst = value def len(self) -> sizet: