參數(shù)傳遞
- 函數(shù)參數(shù)傳遞盡量使用 pass by reference 。傳的快孙咪。如果是類似 int 的類型就不需要了。如果不希望被改變巡语,加上 const 翎蹈。
class A {
private:
int a, b, c, d;
public:
A(int q, int w, int e, int r) : a(q), b(w), c(e), d(r) {
...
}
};
void foo(A& value) { //foo(const A& value) 變量不會(huì)被改變,加上 const
...
}
A tmp(1,2,3,4);
foo(tmp);
- 函數(shù)返回值盡量使用 pass by reference男公。如果是類似 int 的類型就不需要了荤堪。
class A {
private:
...
public:
A& operator += (const A) {
...
return *this;
}
};
- pass by reference 特性:傳遞者無(wú)需知道接收者是以什么方式接收
// 注意,函數(shù)中的 return *th 枢赔,這個(gè) th 是由 A& 來(lái)接收的澄阳。
inline A&
foo(A* th, const A& r) {
...
return *th;
}
文件聲明文件聲明文件聲明