TList와 구조체(Class) 사용방법

2012. 12. 10. 09:47언어/C++ Builder

출처 : http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_qna&no=67177

TList *list = new TList()

list->Add(); 이런식으로 넣고

기존의 값은 인덱스를 이용하여 불러와서 변경가능합니다.

예를 들면

구조체를 생성하고
typedef struct _Test
{
String name;
String value;
}Test, *pTest;


void __fastcall TForm1::Button2Click(TObject *Sender)
{
TList* lstItem = new TList();

pTest pt = new Test;
pt->name = "첫번째";
pt->value = "첫번째 값";

lstItem->Add( pt);

pTest pt1 = new Test;
pt1->name = "두번째";
pt1->value = "두번째 값";

lstItem->Add( pt1);

pTest pt2 = new Test;
pt2->name = "세번째";
pt2->value = "세번째 값";

lstItem->Add( pt2);

for(int i = 0 ; i < lstItem->Count ; i++)
{
pTest pt3 = (pTest) lstItem->Items[i];
Memo1->Lines->Add(pt3->name + " / " + pt3->value);
}

pTest pt4 = (pTest) lstItem->Items[1];
pt4->name = "네번째";
pt4->name = "네번째 값";

for(int i = 0 ; i < lstItem->Count ; i++)
{
pTest pt5 = (pTest) lstItem->Items[i];
Memo1->Lines->Add(pt5->name + " / " + pt5->value);
}

}
----------------------------------------------------
첫번째 / 첫번째 값
두번째 / 두번째 값
세번째 / 세번째 값

첫번째 / 첫번째 값
네번째 값 / 두번째 값
세번째 / 세번째 값

이런식으로 바뀌죠...

결론은 인덱스를 이용해서 접근하고 변경하면 됩니다.