mirror of
https://github.com/thunderbrewhq/squall.git
synced 2026-02-03 16:39:08 +00:00
feat(array): add TSFixedArray copy ctor
This commit is contained in:
parent
8c2439277c
commit
32a1b30ae8
2 changed files with 22 additions and 0 deletions
|
|
@ -9,6 +9,7 @@ template <class T>
|
|||
class TSFixedArray : public TSBaseArray<T> {
|
||||
public:
|
||||
TSFixedArray();
|
||||
TSFixedArray(const TSFixedArray<T>& source);
|
||||
~TSFixedArray();
|
||||
TSFixedArray<T>& operator=(const TSFixedArray<T>& source);
|
||||
void Clear();
|
||||
|
|
@ -23,6 +24,12 @@ TSFixedArray<T>::TSFixedArray() {
|
|||
this->Constructor();
|
||||
}
|
||||
|
||||
template <class T>
|
||||
TSFixedArray<T>::TSFixedArray(const TSFixedArray<T>& source) {
|
||||
this->Constructor();
|
||||
this->Set(source.Count(), source.Ptr());
|
||||
}
|
||||
|
||||
template <class T>
|
||||
TSFixedArray<T>::~TSFixedArray() {
|
||||
for (uint32_t i = 0; i < this->Count(); i++) {
|
||||
|
|
|
|||
|
|
@ -33,6 +33,21 @@ TEST_CASE("TSFixedArray", "[array]") {
|
|||
REQUIRE(array.Count() == 0);
|
||||
REQUIRE(array.Ptr() == nullptr);
|
||||
}
|
||||
|
||||
SECTION("constructs copy correctly") {
|
||||
TSFixedArray<uint32_t> array;
|
||||
array.SetCount(3);
|
||||
array[0] = 1;
|
||||
array[1] = 2;
|
||||
array[2] = 3;
|
||||
|
||||
TSFixedArray<uint32_t> arrayCopy(array);
|
||||
|
||||
CHECK(arrayCopy.Count() == 3);
|
||||
CHECK(arrayCopy[0] == 1);
|
||||
CHECK(arrayCopy[1] == 2);
|
||||
CHECK(arrayCopy[2] == 3);
|
||||
}
|
||||
}
|
||||
|
||||
TEST_CASE("TSFixedArray::Clear", "[array]") {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue