&是什么意思?在C ++中使用标识符?

时间:2015-12-07 20:33:05

标签: c++

这是一个简单的例子,用于说明在C ++中覆盖运算符。我不明白&的含义。在' CVector&'第9行和第12行。看起来他们没有通过一个CVector的地址,看起来像是&可以省略,因为操作员只是将CVector作为参数。

#include <iostream>
using namespace std;

class CVector {
  public:
  int x,y;
CVector () {};
CVector (int a,int b) : x(a), y(b) {}
CVector operator + (const CVector&);
};

CVector CVector::operator+ (const CVector& param) {
CVector temp;
temp.x = x + param.x;
temp.y = y + param.y;
return temp;
}

int main () 
 {
   CVector foo (3,1);
   CVector bar (1,2);
   CVector result;
   result = foo + bar;
   cout << result.x << ',' << result.y << '\n';
   return 0;
  }

2 个答案:

答案 0 :(得分:2)

这些是引用。它们在C ++中是一个非常基本的概念,我不认为我可以在这个短暂的空间中对它们做出正确的判断。我建议您参考C ++教程或参考资料,以了解有关它们的更多信息,最好是在不涉及类等其他复杂概念的上下文中。

答案 1 :(得分:1)

每当你在C ++中看到&时,如果它带有方法的参数,那意味着参与方法的变量将通过引用传递,并且使用独立变量,它引用了变量存储的地址。