C/C++的代码中常常会碰到这样的定义
typedef struct _MyStruct * pMyStruct;
pMyStruct是一个指向无成员_MyStruct结构的指针,主要是用于描述自定义对象的地址。
比如以MFC的CPtrList为例,(详细请察看afxcoll.h和afxcoll.inl文件)
typedef __POSITION* POSITION;
_AFXCOLL_INLINE void*& CPtrList::GetNext(POSITION& rPosition) // return *Position++
{
CNode* pNode = (CNode*) rPosition;
ASSERT(AfxIsValidAddress(pNode, sizeof(CNode)));
rPosition = (POSITION) pNode->pNext;
return pNode->data;
}