C++取地址符

题目来源剑指offer58
代码如下:
class Solution {
public:
string reverseLeftWords(string s, int n) {
reverseString(s, 0, n - 1);
reverseString(s, n, s.size() - 1);
reverseString(s, 0, s.size() - 1);
return s;
}
private:
void reverseString(string& s, int i, int j) {
while(i < j) swap(s[i++], s[j--]);
}
};
为什么reversestring函数里第一个字符串后要加取地址符啊,这不就改变字符串s的类型了吗?

回答

这个在C++里叫引用/reference, 差不多相当于自动帮你dereference的指针

THE END
分享
二维码
< <上一篇
下一篇>>