CAtlMap 클래스
이 클래스는 지도 개체를 만들고 관리하기 위한 메서드를 제공합니다.
구문
template <typename K,
typename V,
class KTraits = CElementTraits<K>,
class VTraits = CElementTraits<V>>
class CAtlMap
매개 변수
K
키 요소 형식입니다.
V
값 요소 형식입니다.
KTraits
키 요소를 복사하거나 이동하는 데 사용되는 코드입니다. 자세한 내용은 CElementTraits 클래스를 참조하세요.
VTraits
값 요소를 복사하거나 이동하는 데 사용되는 코드입니다.
멤버
공용 Typedefs
속성 | 설명 |
---|---|
CAtlMap::KINARGTYPE | 키가 입력 인수로 전달될 때 사용되는 형식 |
CAtlMap::KOUTARGTYPE | 키가 출력 인수로 반환되는 경우 사용되는 형식입니다. |
CAtlMap::VINARGTYPE | 값이 입력 인수로 전달될 때 사용되는 형식입니다. |
CAtlMap::VOUTARGTYPE | 값이 출력 인수로 전달될 때 사용되는 형식입니다. |
public 클래스
속성 | 설명 |
---|---|
CAtlMap::CPair 클래스 | 키 및 값 요소를 포함하는 클래스입니다. |
CPair 데이터 멤버
속성 | 설명 |
---|---|
CPair::m_key | 키 요소를 저장하는 데이터 멤버입니다. |
CPair::m_value | 값 요소를 저장하는 데이터 멤버입니다. |
공용 생성자
속성 | 설명 |
---|---|
CAtlMap::CAtlMap | 생성자입니다. |
CAtlMap::~CAtlMap | 소멸자입니다. |
공용 메서드
이름 | 설명 |
---|---|
CAtlMap::AssertValid | 유효하지 않은 경우 ASSERT를 발생하려면 이 메서드를 CAtlMap 호출합니다. |
CAtlMap::D isableAutoRehash | 개체의 자동 다시 해시를 사용하지 않도록 설정하려면 이 메서드를 호출합니다 CAtlMap . |
CAtlMap::EnableAutoRehash | 개체의 자동 다시 해시를 사용하도록 설정하려면 이 메서드를 호출합니다 CAtlMap . |
CAtlMap::GetAt | 맵에서 지정된 위치에 있는 요소를 반환하려면 이 메서드를 호출합니다. |
CAtlMap::GetCount | 이 메서드를 호출하여 맵의 요소 수를 검색합니다. |
CAtlMap::GetHashTableSize | 이 메서드를 호출하여 맵의 해시 테이블에 있는 bin 수를 확인합니다. |
CAtlMap::GetKeyAt | 개체의 지정된 위치에 저장된 키를 검색하려면 이 메서드를 CAtlMap 호출합니다. |
CAtlMap::GetNext | 개체에 저장된 다음 요소 쌍에 대한 포인터를 가져오려면 이 메서드를 CAtlMap 호출합니다. |
CAtlMap::GetNextAssoc | 반복할 다음 요소를 가져옵니다. |
CAtlMap::GetNextKey | 개체에서 다음 키를 검색하려면 이 메서드를 호출합니다 CAtlMap . |
CAtlMap::GetNextValue | 개체에서 다음 값을 얻으려면 이 메서드를 호출합니다 CAtlMap . |
CAtlMap::GetStartPosition | 지도 반복을 시작하려면 이 메서드를 호출합니다. |
CAtlMap::GetValueAt | 개체의 지정된 위치에 저장된 값을 검색하려면 이 메서드를 CAtlMap 호출합니다. |
CAtlMap::InitHashTable | 해시 테이블을 초기화하려면 이 메서드를 호출합니다. |
CAtlMap::IsEmpty | 빈 맵 개체를 테스트하려면 이 메서드를 호출합니다. |
CAtlMap::Lookup | 개체의 키 또는 값을 조회하려면 이 메서드를 CAtlMap 호출합니다. |
CAtlMap::Rehash | 개체를 다시 해시하려면 이 메서드를 호출합니다 CAtlMap . |
CAtlMap::RemoveAll | 개체에서 모든 요소를 제거하려면 이 메서드를 호출합니다 CAtlMap . |
CAtlMap::RemoveAtPos | 개체의 지정된 위치에 있는 요소를 제거하려면 이 메서드를 CAtlMap 호출합니다. |
CAtlMap::RemoveKey | 키를 지정하여 개체에서 CAtlMap 요소를 제거하려면 이 메서드를 호출합니다. |
CAtlMap::SetAt | 맵에 요소 쌍을 삽입하려면 이 메서드를 호출합니다. |
CAtlMap::SetOptimalLoad | 개체의 최적 로드를 설정하려면 이 메서드를 호출합니다 CAtlMap . |
CAtlMap::SetValueAt | 개체의 지정된 위치에 저장된 값을 변경하려면 이 메서드를 CAtlMap 호출합니다. |
Public 연산자
속성 | 설명 |
---|---|
CAtlMap::operator[] | 에 새 요소를 CAtlMap 바꾸거나 추가합니다. |
설명
CAtlMap
에서는 지정된 형식의 매핑 배열을 지원하여 정렬되지 않은 키 요소 배열과 관련 값을 관리합니다. 요소(키 및 값으로 구성됨)는 해시 알고리즘을 사용하여 저장되므로 많은 양의 데이터를 효율적으로 저장하고 검색할 수 있습니다.
KTraits 및 VTraits 매개 변수는 요소를 복사하거나 이동하는 데 필요한 추가 코드를 포함하는 특성 클래스입니다.
대신 CAtlMap
CRBMap 클래스를 사용할 수 있습니다. CRBMap
또한 키/값 쌍을 저장하지만 성능 특성이 다릅니다. 항목을 삽입하거나, 키를 조회하거나, 개체에서 CRBMap
키를 삭제하는 데 걸리는 시간은 순서 로그(n)입니다. 여기서 n 은 요소의 수입니다. 예를 CAtlMap
들어 이러한 모든 작업은 일반적으로 일정한 시간이 걸리지만 최악의 시나리오는 순서 가 n일 수 있습니다. 따라서 일반적인 경우 CAtlMap
는 더 빠릅니다.
저장된 요소를 반복할 때의 다른 차이점은 CRBMap
CAtlMap
명백해집니다. CRBMap
에서 요소는 정렬된 순서로 방문됩니다. 에서 CAtlMap
요소는 순서가 지정되지 않으며 순서를 유추할 수 없습니다.
적은 수의 요소를 저장해야 하는 경우 CSimpleMap 클래스를 대신 사용하는 것이 좋습니다.
자세한 내용은 ATL 컬렉션 클래스를 참조 하세요.
요구 사항
헤더: atlcoll.h
CAtlMap::AssertValid
개체가 유효하지 않은 경우 ASSERT를 발생하려면 이 메서드를 CAtlMap
호출합니다.
void AssertValid() const;
설명
디버그 빌드에서 이 메서드는 개체가 유효하지 않으면 ASSERT를 CAtlMap
발생합니다.
예시
CAtlMap::CAtlMap에 대한 예제를 참조하세요.
CAtlMap::CAtlMap
생성자입니다.
CAtlMap(
UINT nBins = 17,
float fOptimalLoad = 0.75f,
float fLoThreshold = 0.25f,
float fHiThreshold = 2.25f,
UINT nBlockSize = 10) throw ();
매개 변수
nBins
저장된 요소에 대한 포인터를 제공하는 bin 수입니다. bin에 대한 설명은 이 항목의 뒷부분에 있는 설명을 참조하세요.
fOptimalLoad
최적의 부하 비율입니다.
fLoThreshold
부하 비율에 대한 낮은 임계값입니다.
fHiThreshold
부하 비율의 상한 임계값입니다.
nBlockSize
블록 크기입니다.
설명
CAtlMap
는 먼저 키에 해시 알고리즘을 사용하여 인덱스를 만들어 저장된 모든 요소를 참조합니다. 이 인덱스는 저장된 요소에 대한 포인터를 포함하는 "bin"을 참조합니다. bin이 이미 사용 중인 경우 후속 요소에 액세스하기 위해 연결된 목록이 만들어집니다. 목록을 트래버스하는 것은 올바른 요소에 직접 액세스하는 것보다 느리므로 맵 구조는 스토리지 요구 사항과 성능의 균형을 맞춰야 합니다. 대부분의 경우 좋은 결과를 제공하기 위해 기본 매개 변수가 선택되었습니다.
부하 비율은 맵 개체에 저장된 요소 수에 대한 bin 수의 비율입니다. 지도 구조가 다시 계산되면 fOptimalLoad 매개 변수 값을 사용하여 필요한 bin 수를 계산합니다. 이 값은 CAtlMap::SetOptimalLoad 메서드를 사용하여 변경할 수 있습니다.
fLoThreshold 매개 변수는 로드 비율이 이전에 CAtlMap
도달할 수 있는 낮은 값으로 맵의 최적 크기를 다시 계산합니다.
fHiThreshold 매개 변수는 개체가 맵의 최적 크기를 다시 계산하기 전에 CAtlMap
로드 비율이 도달할 수 있는 상한 값입니다.
이 다시 계산 프로세스(다시 해시라고 함)는 기본적으로 사용하도록 설정됩니다. 한 번에 많은 데이터를 입력할 때 이 프로세스를 사용하지 않도록 설정하려면 CAtlMap::D isableAutoRehash 메서드를 호출합니다. CAtlMap::EnableAutoRehash 메서드를 사용하여 다시 활성화합니다.
nBlockSize 매개 변수는 새 요소가 필요할 때 할당된 메모리 양에 대한 측정값입니다. 블록 크기가 클수록 메모리 할당 루틴에 대한 호출이 줄어들지만 더 많은 리소스를 사용합니다.
데이터를 저장하려면 먼저 CAtlMap::InitHashTable 호출을 사용하여 해시 테이블을 초기화해야 합니다.
예시
// Create a map which stores a double
// value using an integer key
CAtlMap<int, double> mySinTable;
int i;
// Initialize the Hash Table
mySinTable.InitHashTable(257);
// Add items to the map
for (i = 0; i < 90; i++)
mySinTable[i] = sin((double)i);
// Confirm the map is valid
mySinTable.AssertValid();
// Confirm the number of elements in the map
ATLASSERT(mySinTable.GetCount() == 90);
// Remove elements with even key values
for (i = 0; i < 90; i += 2)
mySinTable.RemoveKey(i);
// Confirm the number of elements in the map
ATLASSERT(mySinTable.GetCount() == 45);
// Walk through all the elements in the map.
// First, get start position.
POSITION pos;
int key;
double value;
pos = mySinTable.GetStartPosition();
// Now iterate the map, element by element
while (pos != NULL)
{
key = mySinTable.GetKeyAt(pos);
value = mySinTable.GetNextValue(pos);
}
CAtlMap::~CAtlMap
소멸자입니다.
~CAtlMap() throw();
설명
할당된 리소스를 해제합니다.
CAtlMap::CPair 클래스
키 및 값 요소를 포함하는 클래스입니다.
class CPair : public __POSITION
설명
이 클래스는 CAtlMap::GetNext 및 CAtlMap::Lookup 메서드에서 매핑 구조에 저장된 키 및 값 요소에 액세스하는 데 사용됩니다.
CAtlMap::D isableAutoRehash
개체의 자동 다시 해시를 사용하지 않도록 설정하려면 이 메서드를 호출합니다 CAtlMap
.
void DisableAutoRehash() throw();
설명
자동 다시 해시를 사용하도록 설정하면(기본값) 부하 값(배열에 저장된 요소 수에 대한 bin 수의 비율)이 맵을 만들 때 지정된 최대값 또는 최소값을 초과하면 해시 테이블의 bin 수가 자동으로 다시 계산됩니다.
DisableAutoRehash
는 많은 요소가 한 번에 맵에 추가될 때 가장 유용합니다. 제한을 초과할 때마다 다시 해시 프로세스를 트리거하는 대신, 요소를 호출DisableAutoRehash
하고, 추가하고, 마지막으로 CAtlMap::EnableAutoRehash를 호출하는 것이 더 효율적입니다.
CAtlMap::EnableAutoRehash
개체의 자동 다시 해시를 사용하도록 설정하려면 이 메서드를 호출합니다 CAtlMap
.
void EnableAutoRehash() throw();
설명
자동 다시 해시를 사용하도록 설정하면(기본적으로는) 부하 값(배열에 저장된 요소 수에 대한 bin 수의 비율)이 맵을 만들 때 지정된 최대값 또는 최소값을 초과하면 해시 테이블의 bin 수가 자동으로 다시 계산됩니다.
EnableAutoRefresh
는 CAtlMap::D isableAutoRehash를 호출한 후 가장 자주 사용됩니다.
CAtlMap::GetAt
맵에서 지정된 위치에 있는 요소를 반환하려면 이 메서드를 호출합니다.
void GetAt(
POSITION pos,
KOUTARGTYPE key,
VOUTARGTYPE value) const;
CPair* GetAt(POSITION& pos) throw();
매개 변수
pos
CAtlMap::GetNextAssoc 또는 CAtlMap::GetStartPosition에 대한 이전 호출에서 반환된 위치 카운터입니다.
key
맵 키의 형식을 지정하는 템플릿 매개 변수입니다.
value
맵 값의 형식을 지정하는 템플릿 매개 변수입니다.
Return Value
맵에 저장된 키/값 요소의 현재 쌍에 대한 포인터를 반환합니다.
설명
디버그 빌드에서 pos가 NULL과 같으면 어설션 오류가 발생합니다.
CAtlMap::GetCount
이 메서드를 호출하여 맵의 요소 수를 검색합니다.
size_t GetCount() const throw();
Return Value
지도 개체의 요소 수를 반환합니다. 단일 요소는 키/값 쌍입니다.
예시
CAtlMap::CAtlMap에 대한 예제를 참조하세요.
CAtlMap::GetHashTableSize
이 메서드를 호출하여 맵의 해시 테이블에 있는 bin 수를 확인합니다.
UINT GetHashTableSize() const throw();
Return Value
해시 테이블의 bin 수를 반환합니다. 설명은 CAtlMap::CAtlMap을 참조하세요.
CAtlMap::GetKeyAt
개체의 지정된 위치에 저장된 키를 검색하려면 이 메서드를 CAtlMap
호출합니다.
const K& GetKeyAt(POSITION pos) const throw();
매개 변수
pos
CAtlMap::GetNextAssoc 또는 CAtlMap::GetStartPosition에 대한 이전 호출에서 반환된 위치 카운터입니다.
Return Value
개체의 지정된 위치에 저장된 키에 대한 참조를 CAtlMap
반환합니다.
예시
CAtlMap::CAtlMap에 대한 예제를 참조하세요.
CAtlMap::GetNext
개체에 저장된 다음 요소 쌍에 대한 포인터를 가져오려면 이 메서드를 CAtlMap
호출합니다.
CPair* GetNext(POSITION& pos) throw();
const CPair* GetNext(POSITION& pos) const throw();
매개 변수
pos
CAtlMap::GetNextAssoc 또는 CAtlMap::GetStartPosition에 대한 이전 호출에서 반환된 위치 카운터입니다.
Return Value
맵에 저장된 다음 키/값 요소 쌍에 대한 포인터를 반환합니다. pos 위치 카운터는 각 호출 후에 업데이트됩니다. 검색된 요소가 맵 의 마지막 요소인 경우 pos 는 NULL로 설정됩니다.
CAtlMap::GetNextAssoc
반복할 다음 요소를 가져옵니다.
void GetNextAssoc(
POSITION& pos,
KOUTARGTYPE key,
VOUTARGTYPE value) const;
매개 변수
pos
CAtlMap::GetNextAssoc 또는 CAtlMap::GetStartPosition에 대한 이전 호출에서 반환된 위치 카운터입니다.
key
맵 키의 형식을 지정하는 템플릿 매개 변수입니다.
value
맵 값의 형식을 지정하는 템플릿 매개 변수입니다.
설명
pos 위치 카운터는 각 호출 후에 업데이트됩니다. 검색된 요소가 맵 의 마지막 요소인 경우 pos 는 NULL로 설정됩니다.
CAtlMap::GetNextKey
개체에서 다음 키를 검색하려면 이 메서드를 호출합니다 CAtlMap
.
const K& GetNextKey(POSITION& pos) const throw();
매개 변수
pos
CAtlMap::GetNextAssoc 또는 CAtlMap::GetStartPosition에 대한 이전 호출에서 반환된 위치 카운터입니다.
Return Value
맵의 다음 키에 대한 참조를 반환합니다.
설명
현재 위치 카운터( pos)를 업데이트합니다. 맵에 항목이 더 이상 없으면 위치 카운터가 NULL로 설정됩니다.
CAtlMap::GetNextValue
개체에서 다음 값을 얻으려면 이 메서드를 호출합니다 CAtlMap
.
V& GetNextValue(POSITION& pos) throw();
const V& GetNextValue(POSITION& pos) const throw();
매개 변수
pos
CAtlMap::GetNextAssoc 또는 CAtlMap::GetStartPosition에 대한 이전 호출에서 반환된 위치 카운터입니다.
Return Value
맵의 다음 값에 대한 참조를 반환합니다.
설명
현재 위치 카운터( pos)를 업데이트합니다. 맵에 항목이 더 이상 없으면 위치 카운터가 NULL로 설정됩니다.
예시
CAtlMap::CAtlMap에 대한 예제를 참조하세요.
CAtlMap::GetStartPosition
지도 반복을 시작하려면 이 메서드를 호출합니다.
POSITION GetStartPosition() const throw();
Return Value
시작 위치를 반환하거나 맵이 비어 있으면 NULL이 반환됩니다.
설명
메서드에 전달할 수 있는 POSITION 값을 반환하여 맵 반복을 시작하려면 이 메서드를 GetNextAssoc
호출합니다.
참고 항목
반복 시퀀스를 예측할 수 없습니다.
예시
CAtlMap::CAtlMap에 대한 예제를 참조하세요.
CAtlMap::GetValueAt
개체의 지정된 위치에 저장된 값을 검색하려면 이 메서드를 CAtlMap
호출합니다.
V& GetValueAt(POSITION pos) throw();
const V& GetValueAt(POSITION pos) const throw();
매개 변수
pos
CAtlMap::GetNextAssoc 또는 CAtlMap::GetStartPosition에 대한 이전 호출에서 반환된 위치 카운터입니다.
Return Value
개체의 지정된 위치에 저장된 값에 대한 참조를 CAtlMap
반환합니다.
CAtlMap::InitHashTable
해시 테이블을 초기화하려면 이 메서드를 호출합니다.
bool InitHashTable(
UINT nBins,
bool bAllocNow = true);
매개 변수
nBins
해시 테이블에 사용되는 bin의 수입니다. 설명은 CAtlMap::CAtlMap을 참조하세요.
bAllocNow
메모리를 할당해야 하는 경우 플래그 표시입니다.
Return Value
성공적인 초기화 시 TRUE를 반환하고 실패 시 FALSE를 반환합니다.
설명
InitHashTable
는 모든 요소가 해시 테이블에 저장되기 전에 호출되어야 합니다. 이 메서드가 명시적으로 호출되지 않으면 생성자가 지정 CAtlMap
한 bin 개수를 사용하여 요소를 처음 추가할 때 자동으로 호출됩니다. 그렇지 않으면 nBins 매개 변수로 지정된 새 bin 수를 사용하여 맵이 초기화됩니다.
bAllocNow 매개 변수가 false이면 해시 테이블에 필요한 메모리는 먼저 필요할 때까지 할당되지 않습니다. 맵을 사용할지 확실하지 않은 경우에 유용할 수 있습니다.
예시
CAtlMap::CAtlMap에 대한 예제를 참조하세요.
CAtlMap::IsEmpty
빈 맵 개체를 테스트하려면 이 메서드를 호출합니다.
bool IsEmpty() const throw();
Return Value
맵이 비어 있으면 TRUE를 반환하고, 그렇지 않으면 FALSE를 반환합니다.
CAtlMap::KINARGTYPE
키가 입력 인수로 전달될 때 사용되는 형식입니다.
typedef KTraits::INARGTYPE KINARGTYPE;
CAtlMap::KOUTARGTYPE
키가 출력 인수로 반환되는 경우 사용되는 형식입니다.
typedef KTraits::OUTARGTYPE KOUTARGTYPE;
CAtlMap::Lookup
개체의 키 또는 값을 조회하려면 이 메서드를 CAtlMap
호출합니다.
bool Lookup(KINARGTYPE key, VOUTARGTYPE value) const;
const CPair* Lookup(KINARGTYPE key) const throw();
CPair* Lookup(KINARGTYPE key) throw();
매개 변수
key
조회할 요소를 식별하는 키를 지정합니다.
value
조회된 값을 받는 변수입니다.
Return Value
키가 있으면 메서드의 첫 번째 형식이 true를 반환하고, 그렇지 않으면 false를 반환합니다. 두 번째 및 세 번째 양식은 CAtlMap::GetNext 등에 대한 호출의 위치로 사용할 수 있는 CPair에 대한 포인터를 반환합니다.
설명
Lookup
는 해시 알고리즘을 사용하여 지정된 키 매개 변수와 정확히 일치하는 키가 포함된 맵 요소를 빠르게 찾습니다.
CAtlMap::operator []
에 새 요소를 CAtlMap
바꾸거나 추가합니다.
V& operator[](kinargtype key) throw();
매개 변수
key
추가하거나 바꿀 요소의 키입니다.
Return Value
지정된 키와 연결된 값에 대한 참조를 반환합니다.
예시
키가 이미 있는 경우 요소가 바뀝니다. 키가 없으면 새 요소가 추가됩니다. CAtlMap::CAtlMap에 대한 예제를 참조하세요.
CAtlMap::Rehash
개체를 다시 해시하려면 이 메서드를 호출합니다 CAtlMap
.
void Rehash(UINT nBins = 0);
매개 변수
nBins
해시 테이블에 사용할 새 bin 수입니다. 설명은 CAtlMap::CAtlMap을 참조하세요.
설명
nBins가 0 CAtlMap
이면 맵의 요소 수와 최적의 부하 설정에 따라 적절한 숫자를 계산합니다. 일반적으로 다시 해시 프로세스는 자동이지만 CAtlMap::D isableAutoRehash가 호출된 경우 이 메서드는 필요한 크기 조정을 수행합니다.
CAtlMap::RemoveAll
개체에서 모든 요소를 제거하려면 이 메서드를 호출합니다 CAtlMap
.
void RemoveAll() throw();
설명
요소를 저장하는 데 사용되는 메모리를 해제하여 개체를 지 CAtlMap
웁니다.
CAtlMap::RemoveAtPos
개체의 지정된 위치에 있는 요소를 제거하려면 이 메서드를 CAtlMap
호출합니다.
void RemoveAtPos(POSITION pos) throw();
매개 변수
pos
CAtlMap::GetNextAssoc 또는 CAtlMap::GetStartPosition에 대한 이전 호출에서 반환된 위치 카운터입니다.
설명
지정된 위치에 저장된 키/값 쌍을 제거합니다. 요소를 저장하는 데 사용되는 메모리가 해제됩니다. pos에서 참조하는 POSITION은 유효하지 않으며 맵에 있는 다른 요소의 POSITION은 유효한 상태로 유지되지만 반드시 동일한 순서를 유지하지는 않습니다.
CAtlMap::RemoveKey
키를 지정하여 개체에서 CAtlMap
요소를 제거하려면 이 메서드를 호출합니다.
bool RemoveKey(KINARGTYPE key) throw();
매개 변수
key
제거할 요소 쌍에 해당하는 키입니다.
Return Value
키를 찾아서 제거하면 TRUE를 반환하고 실패하면 FALSE를 반환합니다.
예시
CAtlMap::CAtlMap에 대한 예제를 참조하세요.
CAtlMap::SetAt
맵에 요소 쌍을 삽입하려면 이 메서드를 호출합니다.
POSITION SetAt(
KINARGTYPE key,
VINARGTYPE value);
매개 변수
key
개체에 추가할 키 값입니다 CAtlMap
.
value
개체에 추가할 값입니다 CAtlMap
.
Return Value
개체에서 키/값 요소 쌍의 CAtlMap
위치를 반환합니다.
설명
SetAt
는 일치하는 키가 있으면 기존 요소를 대체합니다. 키를 찾을 수 없으면 새 키/값 쌍이 만들어집니다.
CAtlMap::SetOptimalLoad
개체의 최적 로드를 설정하려면 이 메서드를 호출합니다 CAtlMap
.
void SetOptimalLoad(
float fOptimalLoad,
float fLoThreshold,
float fHiThreshold,
bool bRehashNow = false);
매개 변수
fOptimalLoad
최적의 부하 비율입니다.
fLoThreshold
부하 비율에 대한 낮은 임계값입니다.
fHiThreshold
부하 비율의 상한 임계값입니다.
bRehashNow
해시 테이블을 다시 계산해야 하는지 여부를 나타내는 플래그입니다.
설명
이 메서드는 개체에 대한 CAtlMap
최적의 로드 값을 다시 정의합니다. 다양한 매개 변수에 대한 설명은 CAtlMap::CAtlMap을 참조하세요. bRehashNow가 true이고 요소 수가 최소값과 최대값을 벗어나면 해시 테이블이 다시 계산됩니다.
CAtlMap::SetValueAt
개체의 지정된 위치에 저장된 값을 변경하려면 이 메서드를 CAtlMap
호출합니다.
void SetValueAt(
POSITION pos,
VINARGTYPE value);
매개 변수
pos
CAtlMap::GetNextAssoc 또는 CAtlMap::GetStartPosition에 대한 이전 호출에서 반환된 위치 카운터입니다.
value
개체에 추가할 값입니다 CAtlMap
.
설명
개체의 지정된 위치에 CAtlMap
저장된 값 요소를 변경합니다.
CAtlMap::VINARGTYPE
값이 입력 인수로 전달될 때 사용되는 형식입니다.
typedef VTraits::INARGTYPE VINARGTYPE;
CAtlMap::VOUTARGTYPE
값이 출력 인수로 전달될 때 사용되는 형식입니다.
typedef VTraits::OUTARGTYPE VOUTARGTYPE;
CAtlMap::CPair::m_key
키 요소를 저장하는 데이터 멤버입니다.
const K m_key;
매개 변수
K
키 요소 형식입니다.
CAtlMap::CPair::m_value
값 요소를 저장하는 데이터 멤버입니다.
V m_value;
매개 변수
V
값 요소 형식입니다.