다음을 통해 공유


CMapStringToString 클래스

CString 개체로 키가 지정된 CString 개체의 맵을 지원합니다.

구문

class CMapStringToString : public CObject

멤버

멤버 CMapStringToString 함수는 CMapStringToOb 클래스 의 멤버 함수와 유사합니다. 이처럼 두 함수가 비슷하므로 CMapStringToOb 참조 설명서에서 멤버 함수 관련 사항을 확인할 수 있습니다. 포인터를 CObject 반환 값 또는 "output" 함수 매개 변수로 볼 때마다 포인터를 대체합니다 char. 포인터를 CObject "input" 함수 매개 변수로 볼 때마다 포인터를 대체합니다 char.

BOOL CMapStringToString::Lookup(LPCTSTR<key>, CString&<rValue>) const;

예를 들어 위의 코드는

BOOL CMapStringToOb::Lookup(const char*<key>, CObject*&<rValue>) const;

공용 구조체

이름 설명
CMapStringToString::CPair 키 값과 연결된 문자열 개체의 값을 포함하는 중첩된 구조체입니다.

공용 생성자

속성 설명
CMapStringToString::CMapStringToString 생성자입니다.

공용 메서드

이름 설명
CMapStringToString::GetCount 이 맵의 요소 수를 반환합니다.
CMapStringToString::GetHashTableSize 해시 테이블의 현재 요소 수를 결정합니다.
CMapStringToString::GetNextAssoc 반복할 다음 요소를 가져옵니다.
CMapStringToString::GetSize 이 맵의 요소 수를 반환합니다.
CMapStringToString::GetStartPosition 첫 번째 요소의 위치를 반환합니다.
CMapStringToString::HashKey 지정된 키의 해시 값을 계산합니다.
CMapStringToString::InitHashTable 해시 테이블을 초기화합니다.
CMapStringToString::IsEmpty 빈 맵 조건(요소 없음)에 대한 테스트입니다.
CMapStringToString::Lookup void 포인터 키를 기반으로 void 포인터를 조회합니다. 가리키는 엔터티가 아닌 포인터 값이 키 비교에 사용됩니다.
CMapStringToString::LookupKey 지정된 키 값과 연결된 키에 대한 참조를 반환합니다.
CMapStringToString::P GetFirstAssoc 맵의 첫 번째 CString 포인터를 가져옵니다.
CMapStringToString::P GetNextAssoc 반복할 다음 CString 포인터를 가져옵니다.
CMapStringToString::P Lookup 값이 지정된 값과 CString 일치하는 포인터를 반환합니다.
CMapStringToString::RemoveAll 이 맵에서 모든 요소를 제거합니다.
CMapStringToString::RemoveKey 키로 지정된 요소를 제거합니다.
CMapStringToString::SetAt 맵에 요소를 삽입합니다. 는 일치하는 키가 있으면 기존 요소를 대체합니다.

Public 연산자

이름 설명
CMapStringToString::operator [ ] 맵에 요소를 삽입합니다. 연산자 대체는 SetAt다음과 같습니다.

설명

CMapStringToString는 serialization 및 요소 덤프를 지원하기 위해 IMPLEMENT_SERIAL 매크로를 통합합니다. 맵이 오버로드된 insertion( <<) 연산자 또는 Serialize 멤버 함수를 사용하여 보관에 저장되면 각 요소가 차례로 serialize됩니다.

개별 CString- CString 요소의 덤프가 필요한 경우 덤프 컨텍스트의 깊이를 1 이상으로 설정해야 합니다.

개체가 CMapStringToString 삭제되거나 요소가 제거되면 개체가 CString 적절하게 제거됩니다.

자세한 CMapStringToString내용은 컬렉션 문서를 참조하세요.

상속 계층 구조

CObject

CMapStringToString

요구 사항

헤더: afxcoll.h

CMapStringToString::CPair

키 값과 연결된 문자열 개체의 값을 포함합니다.

설명

CMapStringToString 클래스 내의 중첩된 구조체입니다.

구조체는 다음 두 개의 필드로 구성됩니다.

  • key 키 형식의 실제 값입니다.

  • value 연결된 개체의 값입니다.

CMapStringToString::P Lookup, CMapStringToString::P GetFirstAssocCMapStringToString::P GetNextAssoc의 반환 값을 저장하는 데 사용됩니다.

예시

사용 예제는 CMapStringToString::P Lookup의 예제 를 참조하세요.

CMapStringToString::P GetFirstAssoc

지도 개체의 첫 번째 항목을 반환합니다.

const CPair* PGetFirstAssoc() const;

CPair* PGetFirstAssoc();

Return Value

지도의 첫 번째 항목에 대한 포인터입니다. CMapStringToString::CPair를 참조하세요. 맵이 비어 있으면 값은 NULL입니다.

설명

맵 개체의 첫 번째 요소에 대한 포인터를 반환하려면 이 함수를 호출합니다.

예시

CMapStringToString myMap;
CString myStr[4] = {_T("One"), _T("Two"), _T("Three"), _T("Four")};
CMapStringToString::CPair *pCurVal;

myMap.InitHashTable(257);

// Add 4 elements to the map.
myMap.SetAt(myStr[0], _T("Odd"));
myMap.SetAt(myStr[1], _T("Even"));
myMap.SetAt(myStr[2], _T("Odd"));
myMap.SetAt(myStr[3], _T("Even"));

pCurVal = myMap.PGetFirstAssoc();
while (pCurVal != NULL)
{
   _tprintf_s(_T("Current key value at %s: %s\n"),
              pCurVal->key, pCurVal->value);
   pCurVal = myMap.PGetNextAssoc(pCurVal);
}

CMapStringToString::P GetNextAssoc

pAssocRec에서 가리키는 map 요소를 검색합니다.

const CPair *PGetNextAssoc(const CPair* pAssoc) const;

CPair *PGetNextAssoc(const CPair* pAssoc);

매개 변수

pAssoc
이전 PGetNextAssoc 또는 PGetFirstAssoc 호출에서 반환된 지도 항목을 가리킵니다.

Return Value

맵의 다음 항목에 대한 포인터입니다. CMapStringToString::CPair를 참조하세요. 요소가 맵의 마지막 요소인 경우 값은 NULL입니다.

설명

맵의 모든 요소를 반복하려면 이 메서드를 호출합니다. 호출 PGetFirstAssoc 을 사용하여 첫 번째 요소를 검색한 다음 연속 호출을 사용하여 맵을 반복합니다 PGetNextAssoc.

예시

CMapStringToString::P GetFirstAssoc에 대한 예제를 참조하세요.

CMapStringToString::P Lookup

지정된 키에 매핑된 값을 조회합니다.

const CPair* PLookup(LPCTSTR key) const;

CPair* PLookup(LPCTSTR key);

매개 변수

key
검색할 요소의 키에 대한 포인터입니다.

Return Value

지정된 키에 대한 포인터입니다.

설명

지정된 키와 정확히 일치하는 키가 있는 map 요소를 검색하려면 이 메서드를 호출합니다.

예시

CMapStringToString myMap;
CString myStr[4] = {_T("One"), _T("Two"), _T("Three"), _T("Four")};

myMap.InitHashTable(257);

// Add 4 elements to the map.
myMap.SetAt(myStr[0], _T("Odd"));
myMap.SetAt(myStr[1], _T("Even"));
myMap.SetAt(myStr[2], _T("Odd"));
myMap.SetAt(myStr[3], _T("Even"));

// Print the element values with odd key values.
CMapStringToString::CPair *pCurVal;

for (int i = 0; i < 4; i += 2)
{
   pCurVal = myMap.PLookup(myStr[i]);
   _tprintf_s(_T("Current key value at %s: %s\n"),
              pCurVal->key, pCurVal->value);
}

참고 항목

MFC 샘플 COLLECT
CObject 클래스
계층 구조 차트