pass-by-value
void f(A a);
1)导致复制是浪费资源
2)多态是导致对象切割
所以我们使用
void f(const A& a)
上面的话针对class,不针对基本类型,函数对象(重载运算符),stl的迭代器。
基本类型:本来就很小,直接复制。
函数对象:暂时不清楚
stl迭代器:暂时不清楚
pass-by-value
void f(A a);
1)导致复制是浪费资源
2)多态是导致对象切割
所以我们使用
void f(const A& a)
上面的话针对class,不针对基本类型,函数对象(重载运算符),stl的迭代器。
基本类型:本来就很小,直接复制。
函数对象:暂时不清楚
stl迭代器:暂时不清楚