用vector实现字符串分割封装成函数不能实现的有关问题,谢谢
用vector实现字符串分割封装成函数不能实现的问题,多谢!
在VC++中编写下列程序,直接写在main函数里能实现,但是封装成函数就不行了,这是为什么?
//参数说明:strings是要返回的字符串VECTOR,s是待分割的字符串,c是分割字符
CStringDivision(vector <CString> strings, CString s, const char c)
{
int pos, cursor;
CString media;
if (! strings.empty())
strings.clear();
pos=-1;
while( (s.Find( ', ',pos+1) != -1) || (pos+1 < s.GetLength()) ){
cursor = s.Find( ', ',pos+1);
if (cursor == -1)
cursor = s.GetLength();
media = s.Mid(pos+1,cursor-pos-1);
pos = cursor;
strings.push_back( (CString)media );
}
}
------解决方案--------------------
引用传参数
vector <CString> & strings
在VC++中编写下列程序,直接写在main函数里能实现,但是封装成函数就不行了,这是为什么?
//参数说明:strings是要返回的字符串VECTOR,s是待分割的字符串,c是分割字符
CStringDivision(vector <CString> strings, CString s, const char c)
{
int pos, cursor;
CString media;
if (! strings.empty())
strings.clear();
pos=-1;
while( (s.Find( ', ',pos+1) != -1) || (pos+1 < s.GetLength()) ){
cursor = s.Find( ', ',pos+1);
if (cursor == -1)
cursor = s.GetLength();
media = s.Mid(pos+1,cursor-pos-1);
pos = cursor;
strings.push_back( (CString)media );
}
}
------解决方案--------------------
引用传参数
vector <CString> & strings