欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

问 foo = 42; 假设 foo 的正文是这样的 代码语言:javascript 复制 int & foo { static int i = 0; return i; return foo { return i; } } foo = 30. 然后将静态 int i 设为 30; 一个更实用的例子是一个返回自身引用的类。 代码语言:javascript 复制 类 foo { public. foo {} foo& addString { /* AddString */

最编程 2024-06-21 08:56:23
...

说福的身体是这样的:

代码语言:javascript
复制
int & foo()
{
   static int i = 0;
   return i;
}
foo() = 30;

那就把静态的int,i,设为30;

一个更实用的例子是一个类,它返回对自身的引用。

代码语言:javascript
复制
class foo
{
public:
   foo() {}

   foo& addString() {
      /* AddString */ 
      return *this;
   }

   foo& subtractSomething() { 
      /* Subtract Something */ 
      return *this; 
   }
}

然后像这样使用它:

代码语言:javascript
复制
foo f;
f.addString().subtractSomething();

类操作符这样做--所以您可以这样做:

代码语言:javascript
复制
foo a, b c;

foo d = a+b+c;

其中,+运算符定义为:

代码语言:javascript
复制
foo & operator+(const foo& f)