Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * This class was created for anybody to use at any time, there is no licensing to it. Just use it as you see fit.
- * Created Chris Armitt.
- */
- #ifndef _ARRAY2D
- #define _ARRAY2D
- template<class T>
- class Array2D
- {
- protected:
- T** m_pTheArray;
- int m_iX;
- int m_iY;
- public:
- Array2D(int x, int y)
- {
- m_pTheArray = new T*[x];
- for (int i = 0; i < x; i++)
- {
- m_pTheArray[i] = new T[y];
- for (int j = 0; j < y; j++)
- {
- m_pTheArray[i][j] = T(); //default;
- }
- }
- m_iX = x;
- m_iY = y;
- }
- virtual ~Array2D()
- {
- for (int i = 0; i < m_iX; i++)
- {
- delete[] m_pTheArray[i];
- }
- delete[] m_pTheArray;
- }
- bool SetElement(int x, int y, T item)
- {
- if (x >= m_iX || y >= m_iY || y < 0 || x < 0)
- {
- return false;
- }
- m_pTheArray[x][y] = item;
- return true;
- }
- bool GetElement(int x, int y, T &item)
- {
- if (x >= m_iX || y >= m_iY || y < 0 || x < 0)
- {
- return false;
- }
- item = m_pTheArray[x][y];
- return true;
- }
- };
- #endif //#ifndef _ARRAY2D
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement