0

所以,我不能像这样编译我的代码:

std::vector<std::string> split = split("A String Blah");  

使用此方法签名:

std::vector<std::string> split(const std::string& s)  

因为它说它需要不止一个论据。为什么仅仅一个字符串还不够?

4

1 回答 1

6

当你有这条线时:

std::vector<std::string> split = split("A String Blah"); 

C++ 编译器认为split右侧所指的与split左侧所声明的相同。结果,它给你一个错误,因为事实上, astd::vector<std::string>不是一个接受一个参数的函数。

要解决此问题,请考虑重命名变量:

std::vector<std::string> theSplit = split("A String Blah"); 

希望这可以帮助!

于 2013-02-09T20:25:31.277 回答