From 8cb74178c2b8e5883a1181af687fa8cfc0c6e5da Mon Sep 17 00:00:00 2001 From: chai Date: Sun, 18 Nov 2018 23:44:40 +0800 Subject: =?UTF-8?q?*=E4=BF=AE=E6=94=B9=E7=9B=AE=E5=BD=95=E4=B8=BA=E5=B0=8F?= =?UTF-8?q?=E5=86=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/libjin/Common/je_array.hpp | 123 ----------------------------------------- 1 file changed, 123 deletions(-) delete mode 100644 src/libjin/Common/je_array.hpp (limited to 'src/libjin/Common/je_array.hpp') diff --git a/src/libjin/Common/je_array.hpp b/src/libjin/Common/je_array.hpp deleted file mode 100644 index 8a5cbf1..0000000 --- a/src/libjin/Common/je_array.hpp +++ /dev/null @@ -1,123 +0,0 @@ -#ifndef __JE_COMMON_ARRAY_H__ -#define __JE_COMMON_ARRAY_H__ - -namespace JinEngine -{ - - /// - /// A array created on heap. - /// - template - class Array - { - public: - /// - /// Array constructor. - /// - Array() - : length(0) - , data(nullptr) - { - } - - /// - /// Array constructor. - /// - /// @param l Length of array. - /// - Array(int l) - { - length = l; - data = new T[l]; - } - - /// - /// Array destructor. - /// - ~Array() - { - delete[] data; - length = 0; - } - - /// - /// Get address of data. - /// - /// @return Address of data. - /// - T* operator &() - { - return data; - } - - /// - /// Get specific element of array. - /// - /// @return Element of array. - /// - T& operator[](int index) - { - return data[index]; - } - - /// - /// Bind data with given data. - /// - /// @param data Data pointer. - /// @param length Length of data. - /// - void bind(T* data, int length) - { - if (data != nullptr) - delete data; - this->data = data; - this->length = length; - } - - /// - /// Add an element. - /// - /// @param v Value of element. - /// - void add(T value) - { - int len = length + 1; - T* d = new T[len]; - memcpy(d, data, size()); - d[length] = value; - bind(d, len); - } - - /// - /// Get size of data in byte. - /// - /// @return Size of data in byte. - /// - int size() - { - return sizeof(T) * length; - } - - /// - /// Get length of data. - /// - /// @return Count of data. - /// - int count() - { - return length; - } - - private: - // Disable new and delete. - void* operator new(size_t t); - void operator delete(void* ptr); - - T * data; - unsigned int length; - - }; - -} // namespace JinEngine - -#endif \ No newline at end of file -- cgit v1.1-26-g67d0