--- nono/lib/alignedarray.h 2026/04/29 17:05:26 1.1 +++ nono/lib/alignedarray.h 2026/04/29 17:05:30 1.1.1.2 @@ -30,6 +30,24 @@ class AlignedArray Reset(); } + // コピーコンストラクタ + AlignedArray(const AlignedArray& src) + { + Reset(src.num); + if (ptr) { + memcpy(ptr, src.ptr, num * sizeof(T)); + } + } + // コピー代入演算子 + AlignedArray& operator=(const AlignedArray& src) + { + Reset(src.num); + if (ptr) { + memcpy(ptr, src.ptr, num * sizeof(T)); + } + return *this; + } + void Reset() { free(ptr); @@ -43,6 +61,9 @@ class AlignedArray return true; } Reset(); + if (new_num == 0) { + return true; + } return Alloc(new_num); }