CTypedPtrMap 클래스
CMapPtrToPtr
, CMapPtrToWord
, CMapWordToPtr
및 CMapStringToPtr
포인터-맵 클래스 개체에 대해 형식 안전 "래퍼"를 제공합니다.
구문
template<class BASE_CLASS, class KEY, class VALUE>
class CTypedPtrMap : public BASE_CLASS
매개 변수
BASE_CLASS
형식화된 포인터 맵 클래스의 기본 클래스입니다. 는 포인터 맵 클래스(, CMapPtrToPtr
, CMapPtrToWord
CMapWordToPtr
또는 CMapStringToPtr
)여야 합니다.
KEY
맵의 키로 사용되는 개체의 클래스입니다.
값
맵에 저장된 개체의 클래스입니다.
멤버
공용 메서드
이름 | 설명 |
---|---|
CTypedPtrMap::GetNextAssoc | 반복할 다음 요소를 가져옵니다. |
CTypedPtrMap::Lookup | 에 기반한 값을 KEY 반환합니다 VALUE . |
CTypedPtrMap::RemoveKey | 키로 지정된 요소를 제거합니다. |
CTypedPtrMap::SetAt | 맵에 요소를 삽입합니다. 는 일치하는 키가 있으면 기존 요소를 대체합니다. |
Public 연산자
속성 | 설명 |
---|---|
CTypedPtrMap::operator [ ] | 요소를 맵에 삽입합니다. |
설명
C++ 형식 검사 기능을 사용하면 CTypedPtrMap
일치하지 않는 포인터 형식으로 인한 오류를 제거할 수 있습니다.
모든 CTypedPtrMap
함수가 인라인이므로 이 템플릿을 사용하면 코드의 크기나 속도에 큰 영향을 주지 않습니다.
사용에 CTypedPtrMap
대한 자세한 내용은 컬렉션 및 템플릿 기반 클래스 문서를 참조하세요.
상속 계층 구조
BASE_CLASS
CTypedPtrMap
요구 사항
헤더: afxtempl.h
CTypedPtrMap::GetNextAssoc
맵 요소를 검색 rNextPosition
한 다음 맵의 다음 요소를 참조하도록 업데이트합니다 rNextPosition
.
void GetNextAssoc(
POSITION& rPosition,
KEY& rKey,
VALUE& rValue) const;
매개 변수
rPosition
이전 GetNextAssoc
또는 BASE_CLASS
::GetStartPosition 호출에서 반환된 POSITION 값에 대한 참조를 지정합니다.
KEY
맵 키의 형식을 지정하는 템플릿 매개 변수입니다.
rKey
검색된 요소의 반환된 키를 지정합니다.
값
맵 값의 형식을 지정하는 템플릿 매개 변수입니다.
rValue
검색된 요소의 반환된 값을 지정합니다.
설명
이 함수는 맵의 모든 요소를 반복하는 데 가장 유용합니다. 위치 시퀀스가 반드시 키 값 시퀀스와 같은 것은 아닙니다.
검색된 요소가 맵의 마지막 요소인 경우 새 값 rNextPosition
이 NULL로 설정됩니다.
이 인라인 함수는 ::GetNextAssoc를 호출BASE_CLASS
합니다.
CTypedPtrMap::Lookup
Lookup
에서는 해시 알고리즘을 사용하여 정확히 일치하는 키를 사용하여 지도 요소를 빠르게 찾습니다.
BOOL Lookup(BASE_CLASS ::BASE_ARG_KEY key, VALUE& rValue) const;
매개 변수
BASE_CLASS
이 맵 클래스의 기본 클래스를 지정하는 템플릿 매개 변수입니다.
key
조회할 요소의 키입니다.
값
이 맵에 저장된 값의 형식을 지정하는 템플릿 매개 변수입니다.
rValue
검색된 요소의 반환된 값을 지정합니다.
Return Value
요소가 발견된 경우 0이 아닌 경우 그렇지 않으면 0입니다.
설명
이 인라인 함수는 ::Lookup을 호출BASE_CLASS
합니다.
CTypedPtrMap::operator [ ]
이 연산자는 대입문(l-value)의 왼쪽에서만 사용할 수 있습니다.
VALUE& operator[ ](base_class ::base_arg_key key);
매개 변수
값
이 맵에 저장된 값의 형식을 지정하는 템플릿 매개 변수입니다.
BASE_CLASS
이 맵 클래스의 기본 클래스를 지정하는 템플릿 매개 변수입니다.
key
맵에서 조회하거나 만들 요소의 키입니다.
설명
지정된 키를 가진 map 요소가 없으면 새 요소가 만들어집니다. 맵에서 키를 찾을 수 없기 때문에 이 연산자에 해당하는 "오른쪽"(r-value)이 없습니다. 요소 검색에 Lookup
멤버 함수를 사용합니다.
CTypedPtrMap::RemoveKey
이 멤버 함수는 ::RemoveKey를 호출 BASE_CLASS
합니다.
BOOL RemoveKey(KEY key);
매개 변수
KEY
맵 키의 형식을 지정하는 템플릿 매개 변수입니다.
key
제거할 요소의 키입니다.
Return Value
항목이 발견되고 성공적으로 제거된 경우 0이 아닌 경우 그렇지 않으면 0입니다.
설명
자세한 설명은 CMapStringToOb::RemoveKey를 참조 하세요.
CTypedPtrMap::SetAt
이 멤버 함수는 ::SetAt를 호출 BASE_CLASS
합니다.
void SetAt(KEY key, VALUE newValue);
매개 변수
KEY
맵 키의 형식을 지정하는 템플릿 매개 변수입니다.
key
newValue의 키 값을 지정합니다.
newValue
새 요소의 값인 개체 포인터를 지정합니다.
설명
자세한 설명은 CMapStringToOb::SetAt을 참조하세요.
참고 항목
MFC 샘플 COLLECT
계층 구조 차트
CMapPtrToPtr 클래스
CMapPtrToWord 클래스
CMapWordToPtr 클래스
CMapStringToPtr 클래스