观察下面两个函数,它们具有相同的参数列表,貌似无法重载:
- string& operator[](size_t n) {
return elements[n];
}
2. const string& operator(size_t n) const {
return elements[n];
}
但实际上,函数2的尾置const使得对*this进行了筛选,于是:
当非const对象调用时,匹配1;
而const对象调用时,匹配2;
从而实现了重载。
ps:函数1,2事实上实现了下标运算符常量版本与非常量版本的重载。
标签:const,函数,列表,operator,尾置,重载 From: https://www.cnblogs.com/abc---/p/17293773.html