这是一个C++函数,用于将一个CString字符串按照指定的分隔符进行切割,并将切割后的子串存储在vector
#include <vector>
#include <afx.h>
std::vector<CString> split_cstring(const CString& strInput, const CString& separator) {
std::vector<CString> vecRet;
int pos = 0;
int begin = 0;
const int size = separator.GetLength();
while (true) {
pos = strInput.Find(separator, begin);
if (pos == -1) {
vecRet.push_back(strInput.Mid(begin));
break;
}
vecRet.push_back(strInput.Mid(begin, pos - begin));
begin = pos + size;
}
return vecRet;
}
在这个函数中,我们使用了CString
类来处理字符串。函数接受两个参数:strInput
是待切割的输入字符串,separator
是分隔符。
函数通过循环查找分隔符出现的位置,并根据位置将输入字符串进行切割。每次切割后的子串都会被添加到返回结果vecRet
中。
最终,函数返回一个存储了切割后子串的vector
请注意,在使用该函数之前需要包含必要的头文件(例如 <vector>
和 <afx.h>
)并确保代码正确初始化了MFC库(如果你正在使用MFC)。
内容由零声教学AI助手提供,问题来源于学员提问