函数体前面加一个const修饰有何作用?
const int isSSL() const {
return is_ssl_;
}
请问这里有两处const修饰,各自有和作用呢?
和直接使用这个函数有什么区别?
int isSSL() {
return is_ssl_;
}
函数体前面加一个const修饰有何作用?
const int isSSL() const {
return is_ssl_;
}
请问这里有两处const修饰,各自有和作用呢?
和直接使用这个函数有什么区别?
int isSSL() {
return is_ssl_;
}
3 回答1.4k 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
4 回答903 阅读
1 回答971 阅读
1 回答1k 阅读
1 回答766 阅读
1 回答867 阅读
UPDATED thanks to @fefe
后面的
const
修饰行为:这个方法不能修改类中成员(mutable
成员除外)。前面的
const
修饰返回值:如果返回复杂类型,其成员不能被修改。若返回值(不管是什么类型),这里的
const
是摆设。若返回指针,必需也用一个
const
指针来接收。和直接使用这个函数有什么区别?安全上的区别。
良好的
const
使用可以避免一些不必要的错误(不小心修改了某成员),也为其他的维护者带来便利(阅读代码时一目了然)