array.cpp
来自「使非MFC窗口程序的窗口回调过程成为C++类的成员函数。」· C++ 代码 · 共 80 行
CPP
80 行
#include "stdafx.h"
#include "array.h"
CArray::CArray()
{
Reset();
}
CArray::~CArray()
{
}
bool CArray::Add(int nElement)
{
if(m_nCount < 0 || m_nCount >= MAX_ELEMENT)
return false;
if(nElement < 0 || nElement >= MAX_ELEMENT)
return false;
m_array[m_nCount++] = nElement;
return true;
}
int CArray::Get(int nIndex)
{
int nResult;
if(nIndex < 0 || nIndex >= m_nCount)
return -1;
nResult = m_array[nIndex];
m_nCount--;
MoveMemory
(
&m_array[nIndex],
&m_array[nIndex+1],
sizeof(int) * (m_nCount-nIndex)
);
return nResult;
}
void CArray::Reset()
{
m_nCount = 0;
FillMemory(m_array, sizeof(m_array), 0xff);
}
void CArray::DefaultSet()
{
m_nCount = MAX_ELEMENT;
for(int i=0; i<m_nCount; i++)
m_array[i] = i;
}
bool CArray::Swap(int nIndex1, int nIndex2)
{
if(nIndex1 < 0 || nIndex1 >= m_nCount)
return false;
if(nIndex2 < 0 || nIndex2 >= m_nCount)
return false;
if(nIndex1 != nIndex2)
{
int nTemp = m_array[nIndex1];
m_array[nIndex1] = m_array[nIndex2];
m_array[nIndex2] = nTemp;
}
return true;
}
inline int CArray::GetCount()
{
return m_nCount;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?