CArray 类
支持类似于 C 数组的数组,但可以根据需要动态减小和增大。
语法
template <class TYPE, class ARG_TYPE = const TYPE&>
class CArray : public CObject
void CArrayView::OnDraw(CDC* pDC)
{
CArrayDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
CString str1;
CArray<int, int> arr1;
arr1.SetSize(2, 10); //设置数组长度;
for (int i = 0; i < 10; i++)
arr1.SetAt(i, 2 * i);
for (i = 0; i<10; i++)
{
str1.Format("%d", arr1[i]);
pDC->TextOut(100, 10+i*25, str1);
}
}
类的定义在 #include <afxtempl.h> 中,如果是MFC工程已默认包含;
如果定义为
CArray<int> arr1;
将出现错误,
error C2976: 'CArray' : too few template arguments;
太少模板参数;