CStringList::InsertBefore 是 MFC(Microsoft Foundation Classes)中 CStringList 类的一个公共方法,用于在链表中的指定位置前插入一个新元素。

以下是 CStringList::InsertBefore 的声明:
POSITION InsertBefore(POSITION position, LPCTSTR newElement);
POSITION InsertBefore(POSITION position, const CString& newElement);

这个方法允许你在链表中的指定位置(通过 POSITION 参数表示)前插入一个新的元素。你可以提供一个 LPCTSTR 或 CString 类型的参数作为新元素。

以下是一个简单的示例:
// 创建一个CStringList对象并添加一些元素
CStringList myList;
myList.AddTail(_T("Element2"));
myList.AddTail(_T("Element3"));

// 获取链表中元素2的位置
POSITION pos = myList.Find(_T("Element2"));

if (pos != NULL) {
    // 在元素2前插入新元素
    myList.InsertBefore(pos, _T("Element1"));

    // 遍历链表并输出元素
    pos = myList.GetHeadPosition();
    while (pos != NULL) {
        CString strElement = myList.GetNext(pos);
        // 处理元素,例如输出到控制台
        wprintf(_T("Element: %s\n"), strElement);
    }
}

在上述示例中,Find 方法用于找到链表中元素 "Element2" 的位置,然后通过 InsertBefore 在该位置前插入新元素 "Element1"。最后,通过遍历链表输出所有元素。


转载请注明出处:http://www.zyzy.cn/article/detail/22592/MFC/CStringList