头文件
#include <cstdio>
#include <afxtempl.h>
代码
// 源代码POSITION定义 ,一个结构指针
//struct __POSITION {};
//typedef __POSITION* POSITION;
//源代码节点定义 ,双向链表
//struct CNode
//{
// CNode* pNext;
// CNode* pPrev;
// TYPE data;
//};
CList<int> clist;
clist.AddHead(10);
clist.AddHead(20);
clist.AddHead(30);
clist.AddHead(50);
clist.AddTail(100);
clist.AddTail(200);
POSITION p = clist.GetHeadPosition();
cout<<"遍历前 p = "<<p<<endl;
//遍历
while(p){
cout<<clist.GetAt(p)<<" ";
clist.GetNext(p);
//p++; //不能这么写,哈哈 ,原因如下
//AFX_INLINE const TYPE& CList<TYPE, ARG_TYPE>::GetNext(POSITION& rPosition) const // return *Position++
//{ CNode* pNode = (CNode*) rPosition;
//ASSERT(AfxIsValidAddress(pNode, sizeof(CNode)));
//rPosition = (POSITION) pNode->pNext; //参数引用,这里指针重新赋值
//retur