相关疑难解决方法(0)

353
推荐指数
18
解决办法
30万
查看次数

在C++中,哪些类别(左值,右值,右值等)可以生成类类型临时的表达式?

这是一些示例代码:

#include <iostream>

class Foo
{
public:
  explicit Foo(int x) : data(x) {};

  Foo& operator++()
  {
    data += 1;
    return *this;
  }

  void *get_addr()
  {
    return (void*)this;
  }

  friend Foo operator + (const Foo& lhs, const Foo& rhs);
  friend std::ostream& operator << (std::ostream& os, const Foo& f);

private:
  int data;
};

std::ostream& operator << (std::ostream& os, const Foo& f)
{
  return (os << f.data);
}

Foo operator + (const Foo& lhs, const Foo& rhs)
{
  return Foo(lhs.data + rhs.data);
} …
Run Code Online (Sandbox Code Playgroud)

c++ rvalue rvalue-reference xvalue c++11

9
推荐指数
2
解决办法
1313
查看次数

标签 统计

c++ ×2

c++11 ×2

rvalue ×1

rvalue-reference ×1

typeof ×1

variables ×1

xvalue ×1