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並有一個問題?該函數是否應該一次只處理一個字符,或者處理整個字符串? –
您還應該計算兩種情況下的函數調用次數。如果你想知道什麼是最快的,也做一些測量。當然,不要忘記傳遞參考。 –