我想知道-为什么const (...)&在C ++中引入一个好主意?我在一些课程教程中找到了此代码。我了解到,const在将某些东西&传递给函数的同时,它使它们保持不变,并且无法更改。为什么两者都做?如果我无法更改某些内容,为什么还要将其传递给函数?
这是一个例子:
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) { //example
CVector temp;
temp.x = x + param.x;
temp.y = y + param.y;
return temp;
}
Run Code Online (Sandbox Code Playgroud)
即使const阻止您更改参数的值,也最好发送对它的引用,而不是按值发送它,因为在大型对象中,按值发送它需要首先复制它,这是不必要的通过参考致电时
| 归档时间: |
|
| 查看次数: |
6827 次 |
| 最近记录: |