|
STL set 을 쓰세요
대략 다음과 같습니다.
std::set<string> S;
for
{
S.insert( 넣어놓을 문자열 (string type으로))
}
같은 문자열이 있는지 검사는
if( S.find(somestring) != S.end())
{
bingo
}
else
{
없음..
}
set 은 우리말로 수학의 집합이죠.
set 자체가 string 들을 정렬해 놓으니 검색할때 빠릅니다.
VCL 에 SortedStringList 인가 있을겁니다 stl 대신 vcl을 사용하신다면 이것도 좋을것 같고요.
특정한 index를 원하신다면 stl map을 쓰시면 됩니다.
map 은 set의 2차원이라 보시면 됩니다.
한수동 님이 쓰신 글 :
: 무지함에 있어 송구스럽지만 이런 질문을 드립니다;;
:
: strcmp를 써서 비교해야 할 문자열이 수백개 될때
: if...else if 문 말고 딴 방법은 없을까요?
: (if...else if 문 을 쓰면 만약 비교해서 같은 문자열이 가장 마지막에 있으면 너무 시스템이 버벅거려서;;;)
:
: 제가 원하는 것은 단지 어떤 변수 문자열이 a라는 문자열과 같으면 1을 반환 하는 식의
: 일정한 문자열과 같으면 그 문자열에 대한 번호를 반환하는 것을 하는 것입니다
|