在 MFC(Microsoft Foundation Classes)中,CStringList::SetAt 方法并不是 CStringList 类的公共方法。SetAt 方法通常用于关联数组类(如 CArray)或类似的数据结构中,而不是在 CStringList 中使用。

如果你想在 CStringList 中更改特定位置的元素,可以使用 GetAt 方法获取指定位置的元素,然后进行修改。

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

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

if (pos != NULL) {
    // 获取并修改元素2
    CString& strElement = myList.GetAt(pos);
    strElement = _T("NewElement2");

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

在上述示例中,通过 Find 方法找到链表中元素 "Element2" 的位置,然后使用 GetAt 获取该位置的元素的引用,并进行修改。最后,通过遍历链表输出修改后的元素。


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