方法需要多个参数?

Tip*_*s48 0 c++ methods arguments signature

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

std::vector<std::string> split = split("A String Blah");  
Run Code Online (Sandbox Code Playgroud)

使用此方法签名:

std::vector<std::string> split(const std::string& s)  
Run Code Online (Sandbox Code Playgroud)

因为它说它需要不止一个参数.为什么不只是一个字符串呢?

tem*_*def 6

当你有这条线时:

std::vector<std::string> split = split("A String Blah"); 
Run Code Online (Sandbox Code Playgroud)

C++编译器认为split右侧的引用split与左侧声明的相同.结果,它给你一个错误,因为实际上,a std::vector<std::string>不是一个带有一个参数的函数.

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

std::vector<std::string> theSplit = split("A String Blah"); 
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!