方法声明中const关键字的不同位置?

用户名

对于stackoverflow上的类似问题,有一些答案,但是所有答案都不完整或没有比较(使用不同的示例)。我看到了至少3种可能的声明情况:

  1. const void f();
  2. void f() const;
  3. const void f() const;

它们之间有什么区别?

我发现的唯一区别是以下代码仅适用于(2)或(3):

const foobar fb;
fb.foo();
枸杞
  1. const在此位置,将返回类型声明为const
  2. const此位置仅可用于成员函数,这意味着该函数不能/不会修改任何成员非mutable变量(对象常量)。
  3. 这是上述2的总和。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章