理解右值引用的C ++语法

天花

我正在阅读Thomas Becker撰写的有关c ++ 11 rvalue引用的博客,页面底部附近的以下语法确实使我感到困惑。

  int& foo();
  foo() = 42; // ok, foo() is an lvalue

到底是foo什么?返回的函数指针int; 一个东西?

如果是函数对象,如何为它分配值,为什么是foo左值?

Brian Bi

foo是具有返回类型的函数int&线

int& foo();

只是声明函数,但没有定义它。

foo被调用时,其结果是型的左值int因此,您可以为其分配:foo() = 42;

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章