我是boost和c ++的新手,我正在尝试使用tokenizer功能。 这是我的代码。
string
UrlUtils::get_query(std::string query_string, std::string parameter)
{
char_separator<char> seperator("&");
vector<string> splits = split(query_string, seperator);
for (int i = 0; i < splits.size(); i++)
{
cout << splits[i] << endl;
}
return "";
}
vector<string>
split(std::string haystack, char_separator<char> seperator)
{
vector<string> splited_heystack;
tokenizer<char_separator<char> > tokens(haystack, seperator);
BOOST_FOREACH(string token, tokens){
splited_heystack.push_back(token);
}
return splited_heystack;
}
我收到此错误
Undefined symbols for architecture x86_64:
"UrlUtils::split(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::char_separator<char, std::char_traits<char> >)", referenced from:
UrlUtils::get_query(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)in url_utils.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
任何人都可以告诉我为什么会遇到这个问题。