본문 바로가기

쓰기

void CCustomDic2::SetKey(LPCSTR JpnWord, LPCSTR KorWord)
{
    map<UINT,struct DicWord> EmptyMap;
    struct DicWord TempWord;

    map<size_t,UINT>::iterator iterBook;

    TempWord.WordLen = strlen(KorWord);
    TempWord.WordN = WordN++;

    UINT Hash=MakeStringHash(JpnWord);
    size_t IndexChar=TempWord.WordLen*65536+JpnWord[1]; //길이 * 65536 + 2번째 글자로 한차례 걸러내기
    UINT ValuePointer=0;

    iterBook = KeyIndex.find(IndexChar);
    if(iterBook==KeyIndex.end()){
        //값이 들어있지 않다면
        KeyIndex[IndexChar]=BookN;
        KeyBook.push_back(EmptyMap);
        //새 맵을 집어넣는다.

        ValuePointer=BookN++;
    }
    else{
        //값이 들어있다면
        ValuePointer=iterBook->second;
    }

    KeyBook[ValuePointer][Hash]=TempWord;
    ValueList.push_back(KorWord);
    //삽입
}



헤더에는
map<size_t, UINT> KeyIndex;
vector<map<UINT,struct DicWord>> KeyBook;

vector<string> ValueList;

UINT WordN;
UINT BookN;
으로 선언되어 있습니다.
분류 :
Talk
조회 수 :
8705
등록일 :
2008.08.09
20:27:04
엮인글 :
https://arallab.hided.net/3603/a49/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/3603

whoami

2008.08.09
22:05:25

뭔가 대충은 괜찮아 보입니다만.. 테스트를 잘 해보시기 바랍니다.
저도 눈과 머리로 시뮬레이션해서 결과를 도출시키는 데에는 한계가 있고 종종 틀리니까 말이죠.
제가 직접 코딩하는 프로그램도 그런데, 다른 분의 코드를 딱 보고 에러가 있는지 없는지 확인하기는 더 어렵습니다.

결론은.. 로그파일을 만들어 뽑아보던지 테스트 문자를 넣어보던지 하면서 에러를 직접 잡으시기 바랍니다;;; (퍼억)

Hide_D

2008.08.09
22:13:18
뭐 일단 에러는 안났으니 괜찮겠죠[...]

대충 콘솔 프로그램 하나 만들어서 돌려봐야할듯
List of Articles
공지 Talk [필독] 테스트필터 사용시 주의사항
라파에
155437   2008-08-03 2008-12-16 00:03