void func(char c) {}
void func(std::string) {}
int main() {
std::string s("HelloWorld");
// method 1
func(s);
// method 2
for(std::size_t i = 0; i < s.size(); i++) {
func(s[i]);
}
}
为什么在第二次调用OK时传递值?是不是最终有效地复制相同数量的字符?或者他们实际上是一样的,我错过了什么?按值传递字符串vs按值传递每个字符
什么是实际代码的目的编写的youre并有一个问题?该函数是否应该一次只处理一个字符,或者处理整个字符串? –
您还应该计算两种情况下的函数调用次数。如果你想知道什么是最快的,也做一些测量。当然,不要忘记传递参考。 –