CMapPtrToPtr

CObject
 └CMapPtrToPtr

CMapPtrToPtr类支持空指针为关键码的空指针映射。
CMapPtrToPtr的成员函数与CMapStringToOb类的成员函数相似。由于这种相似性,因此可以为指定的成员函数使用CMapStringToOb参考。不管是否将CObject指针看作函数参数,还是返回值,它都会将指针替换为空值。另外,不管是否将一个指向字符的CString指针或常数指针看作函数参数,还是返回值,它都会将指针替换为空值。
BOOL CMapStringToOb::Lookup( const char* <key>, CObject*& <rValue> ) const;
例如, 它可以转换为:
BOOL CMapPtrToPtr::Lookup( void* <key>, void*& <rValue> ) const;
CMapPtrToPtr 引入了宏IMPLEMENT_DYNAMIC来支持运行状态类型的访问,并将其转储为CDumpContext对象。如果需要实现个别映射元素(指针值)的转储,那么必须将转储文本的深度设置为1或更大。指针对指针的映射不可串行化。
当CMapPtrToPtr对象或其元素被删除,那么仅仅是其指针被删除,而它们参考的入口不会被删除。
如果要了解有关CMapPtrToPtr的更多信息,请参阅联机文档“Visual C++程序员指南”中的“收集”。
#include <afxcoll.h>

CMapPtrToPtrl类的成员

构造函数
CMapPtrToPtr构造一个指向空指针的映射空指针的收集

操作
Lookup查找建立在空指针关键码基础上空指针。指针值,而不是它指向的实体,被用于进行关键码比较
SetAt在映射中插入一个元素,但假如发现了相匹配的关键码,则替换已经存在的元素
operator []在映射中插入一个元素,它是代替SetAt的操作
RemoveKey删除关键码指定的元素
RemoveAll删除映射中所有的元素
GetStartPosition返回第一个元素的位置
GetNextAssoc获取循环中下一个元素

状态
GetCount返回映射中元素的个数
IsEmpty测试是否为空映射(即没有元素)