C++ TList 질문입니다.^^
마리
링크드 리스트를 보고 있는데 참 난해하네요 ..;;
컴퓨터 그래픽스 openGL을 이용한 c++ 프로그래밍을 하고 있는데요.
TListCPoint* m_listPoint; //객체를 선언하고.
m_listPoint.AddTail( new CPoint(x,y) ); //객체를 이용해 링크드 리스트에 x,y 좌표를 넣었습니다.
//아래가 AddTail 인데요. AddTail은 TList.cpp에 있는 함수입니다.
templateclass TYPE
POSITION TListTYPE::AddTail(TYPE data)
{
//----------------------------------------------
// 새로운 노드 객체를 생성한다.
//----------------------------------------------
CNode * pNewNode = NewNode();
if( pNewNode == NULL )
return NULL;
//----------------------------------------------
// 데이타를 초기화한다.
//----------------------------------------------
pNewNode-data = data;
//----------------------------------------------
// Linked List를 구성한다.
//----------------------------------------------
if (m_pNodeTail != NULL)
{
m_pNodeTail-m_pNext = pNewNode;
}
else
{
m_pNodeHead = pNewNode;
}
m_pNodeTail = pNewNode;
return (POSITION)pNewNode;
}
질문은 이렇게 링크드리스트에 올려놓은 x,y좌표를 어떻게 다시 리턴받을 수 있는지 입니다.
templateclass TYPE
POSITION TListTYPE::GetHeadPosition()
{
return (POSITION)m_pNodeHead;
}
GetHeadPosition() 이라는 함수도 있는데요 이를 이용해서
printf(%d, m_listPoint.GetHeadPosition()); 이라고 출력하면 엉뚱한 값이 나옵니다. 아마 주소값이 나오는듯 한데..
x, y 링크드 리스트에 올렸던 x,y 값을 다시 받아오려면 어떻네 해야 하나요??
많은 지도 부탁드립니다.
-
초시계
에구 죄송합니다...정정했습니다 ㅜㅡ