// Array.cpp : Defines the entry point for the console application.
//
// 템플릿을 정의할때 두개의 매개변수를 받는 이유는...
// 템플릿에 사용되는 첫번째 매개변수는 컬렉션 클래스에 저장될 데이터 형식이고
// 두번째매개변수는 컬렉션 클래스에 데이터를 저장하기 위해 사용하는 멤버 함수의 매개변수 데이터 형식이다..
#include "stdafx.h"
CString strData[] = {_T("SUN"), _T("MON"), _T("TUE"),
_T("WED"), _T("THU"),_T("FRI"), _T("SAT") };
CString strEnglish[] = {
_T("January"), _T("February"), _T("March"), _T("April"),
_T("May"), _T("June"), _T("July"), _T("August"), _T("September"),
_T("October"), _T("Nobember"), _T("December")
};
CString strKorean[] = {
_T("1월"), _T("2월"), _T("3월"), _T("4월"),
_T("5월"), _T("6월"), _T("7월"), _T("8월"),
_T("9월"), _T("10월"), _T("11월"), _T("12월"),
};
void main()
{
//CArray
int i;
CArray <UINT, UINT> array;
array.SetSize(10);
for(i=0 ; i < 10 ; i++)
{
array[i] = i + 1;
}
array.InsertAt(5,20);
for(i= 0 ; i <array.GetSize() ; i++)
{
cout << array[i] << endl;
}
//CList
CList <CString, CString> list;
POSITION pos;
CString strdata,data;
for(i = 0 ; i < sizeof(strData)/sizeof(CString) ; i++)
{
list.AddTail(strData[i]);
}
pos=list.GetHeadPosition();
while(pos)
{
data = list.GetNext(pos);
cout << data << endl;
}
//CMap
CString strKey, strValue;
CMap<CString, LPCSTR, CString, CString&> map;
for(i = 0 ; i < sizeof(strEnglish)/sizeof(CString) ; i++)
{
map.SetAt(strEnglish[i], strKorean[i]);
}
pos = map.GetStartPosition();
for(i = 0 ; i < sizeof(strEnglish)/sizeof(CString) ; i++)
{
map.GetNextAssoc(pos, strKey, strValue);
cout << strKey << strValue << endl;
}
}
[출처] template class 사용하기...|작성자 kim779