템플릿에 대해서

프로그래밍 일반에 관한 포럼입니다.

Moderator: 류광

Locked
happyfeelvv
Posts: 4
Joined: 2001-10-17 09:00

Post by happyfeelvv »

class CFSMstate
{
unsigned m_usNumberOfTrans; //이 상태가 담을수 있는 상태전이들의 개수
int *m_piInputs; //상태 전이를 위한 입력 배열
int *m_piOutputState; //출력상태 배열
int m_iStateID; //이 상태의 고유 ID


public:

//생성자는 이상태에 대하 ID와 이 상태가 지원하는
//상태 전이들의 개수를 받는다.
CFSMstate(int iStateID, unsigned usTrans);
//소멸자는 할당된 모든 배열들을 해제한다.
virtual ~CFSMstate();

//상태 전이를 일으키고 출력 상태를 돌려준다.
int GetOutput( int iInput );
//배열로부터 상태전이를 제거한다.
void DeleteTransition(int iOutputID);
//배열에 하나의 상태 전이를 추가한다.
void AddTransition(int iInput, int iOutputID);
//상태 ID를 돌려준다
int GetID();

};

typedef map < int, CFSMstate*, less<int> > State_Map;


--------------------------------------------------------------------
위와 같이 클래스를 만들구 typedef를 했걸랑여...
근디... error C2143: syntax error : missing ';' before '<'
라구 에러가 떠여(4개)

템플릿에 대해서 잘몰라서 그러는디...

글구 이거 책(3.1)에 나오는 거 이걸랑여...점 갈켜주세영
-.-;

흑흑 같다가 쓰지두 못해....

글구여 map에 대해서두 좀 .....
Zho
Posts: 328
Joined: 2001-08-02 09:00
Location: 취미게임개발자
Contact:

Post by Zho »

위에다가
using namespace std;

를 적어 주시거나,

typedef std::map < int, CFSMstate*, std::less > State_Map;

이렇게 쓰시면 될겁니다.

템플릿의 문제가 아니라 STL 때문에 그렇습니다.

map 이라는 것은 STL 에 관련된 문서나 책을 보시면 될거구요.

간단히 말씀드리자면, map 이라는 컨테이너(stl 에서는 그렇게 부름)를 통해

키값과 데이타를 세팅해 놓으면 나중에, 키값을 통해 데이타를 액세스할 수 있습니다.




<font size=-1>[ 이 게시물 는(은) 수정됨 by : Zho 수정 시간: 2001-10-19 00:49 ]</font>
Locked