在 MFC(Microsoft Foundation Classes)中,CStringList::RemoveAt 是 CStringList 类的一个公共方法,用于移除列表中指定位置的元素。
POSITION RemoveAt(POSITION position);

  •  position:要移除的元素的位置。


该方法返回下一个位置,可以用于继续遍历列表。

以下是一个简单的示例,演示如何使用 RemoveAt 方法:
#include <afx.h> // 包含 MFC 头文件

int main() {
    // 创建一个 CStringList 对象
    CStringList stringList;

    // 在列表中添加一些元素
    stringList.AddTail(_T("Element1"));
    stringList.AddTail(_T("Element2"));
    stringList.AddTail(_T("Element3"));

    // 输出原始列表内容
    _tprintf(_T("Original List:\n"));
    POSITION pos = stringList.GetHeadPosition();
    while (pos != NULL) {
        CString element = stringList.GetAt(pos);
        _tprintf(_T("Element: %s\n"), element);
        stringList.GetNext(pos);
    }

    // 移除第二个元素
    POSITION removePos = stringList.GetHeadPosition();
    if (removePos != NULL) {
        stringList.GetNext(removePos); // 移动到第一个元素
        stringList.RemoveAt(removePos); // 移除第二个元素
    }

    // 输出移除后的列表内容
    _tprintf(_T("List after RemoveAt:\n"));
    pos = stringList.GetHeadPosition();
    while (pos != NULL) {
        CString element = stringList.GetAt(pos);
        _tprintf(_T("Element: %s\n"), element);
        stringList.GetNext(pos);
    }

    return 0;
}

此示例演示了如何使用 RemoveAt 方法移除列表中的一个元素。请注意,实际应用中可能需要根据具体情况做更多处理。


转载请注明出处:http://www.pingtaimeng.com/article/detail/22575/MFC/CStringList