diff --git a/LSFramework/LSFramework.vcxproj b/LSFramework/LSFramework.vcxproj
index 9da70c8..70660bc 100644
--- a/LSFramework/LSFramework.vcxproj
+++ b/LSFramework/LSFramework.vcxproj
@@ -23,33 +23,33 @@
{5FE98B77-3558-4384-BDAF-82AC8B69B752}
Win32Proj
String
- 10.0.19041.0
+ 10.0
LSFramework
Application
true
- v141
+ v142
Unicode
Application
false
- v141
+ v142
true
Unicode
Application
true
- v141
+ v142
Unicode
Application
false
- v141
+ v142
true
Unicode
diff --git a/LSFramework/LSMacros.h b/LSFramework/LSMacros.h
index ce607ec..0decba7 100644
--- a/LSFramework/LSMacros.h
+++ b/LSFramework/LSMacros.h
@@ -1,15 +1,15 @@
#pragma once
-#define DELETE_POINTER(Pointer) \
-if (Pointer != nullptr)\
+#define DELETE_POINTER(pPointer) \
+if (pPointer != nullptr)\
{\
- delete Pointer;\
- Pointer = nullptr;\
+ delete pPointer;\
+ pPointer = nullptr;\
}
-#define DELETE_ARRAY(Array) \
-if (Array != nullptr)\
+#define DELETE_ARRAY(vArray) \
+if (vArray != nullptr)\
{\
- delete[] Array;\
- Array = nullptr;\
+ delete[] vArray;\
+ vArray = nullptr;\
}
\ No newline at end of file
diff --git a/LSFramework/LSVector.h b/LSFramework/LSVector.h
index 1e00e06..31a297a 100644
--- a/LSFramework/LSVector.h
+++ b/LSFramework/LSVector.h
@@ -1,17 +1,92 @@
#pragma once
+#include
+#include "LSMacros.h"
template
class LSVector
{
- LSVector()
+public:
+ LSVector(size_t zSize = 1)
{
-
+ m_pData = new T[zSize];
+ m_zCapacity = zSize;
}
~LSVector()
{
}
-};
+ T& PushBack(T obj)
+ {
+ }
+
+ T& PopBack()
+ {
+ }
+
+ T& Insert(const size_t zPos)
+ {
+
+ }
+
+ T& Remove(const size_t zPos)
+ {
+
+ }
+
+ T& At(const size_t zPos)
+ {
+ return m_pData[zPos];
+ }
+
+ void Reserve(const size_t zSize)
+ {
+ T* pOld = m_pData;
+ m_pData = new T[zSize];
+
+ memmove_s(m_pData, zSize, pOld, m_zSize);
+ m_zSize = zSize;
+ m_zCapacity = zSize;
+
+ DELETE_ARRAY(pOld);
+ }
+
+ void Clear()
+ {
+ DELETE_ARRAY(m_pData)
+ }
+
+ size_t Size() const
+ {
+ return m_zSize;
+ }
+
+ size_t Capacity() const
+ {
+ return m_zCapacity;
+ }
+
+ T* Data() const
+ {
+ return m_pData;
+ }
+
+ LSVector& operator=(const LSVector oRhs)
+ {
+
+ }
+
+ LSVector& operator[](const size_t _Pos)
+ {
+
+ }
+
+private:
+
+ std::vector s;
+ T* m_pData = nullptr;
+ size_t m_zSize = 0;
+ size_t m_zCapacity = 0;
+};
\ No newline at end of file