CStringList里面的元素怎么去排序呢?
现在有一个CStringList 我要不停的往里面添加元素进去,然后会进行一个从小到大的顺序排序。每次添加一个元素进去就对这个CStringList里面的元素进行一次排序。
我现在做的是:
CStringList FileList;
POSITION ps;
CString sTemp;
判断FileList是否为空,如果不为空,
ps = FileList.GetHeadPosition();
sTemp = FileList.GetHead();
然后将现在要添加的sTempFileName与sTemp比较,若小于的话
FileList.InsertBefore(ps,sTempFileName);
如果不小于,则
sTemp = FileList.GetNext(ps);
然后再比较sTempFileName与这个新的sTemp的大小,若小于,则添加进去(这里该怎么处理呢?InsertBefore()里面的参数需要一个POSITION值,前面我直接用GetHeadPosition()获得的,但是GetNext()后没有找到相关的可以获得POSITION的函数),否则继续GetNext..
本来想每次把第一个删掉,然后再用GetHeadPosition()获得POSITION值,但是这样的话下一次添加的时候,这个CStringList里面元素估计就不对了,都被删掉了?
谁帮忙解答解答如何GetNext()后InsertBefore()里面的参数POSITION怎么获得。。