条款 20:宁以 pass-by-reference-to-const 替换 pass-by-value

    Prefer pass-by-reference-to-const to pass-by-value.

    • 以 const-reference 传参通常能省去很多拷贝构造、析构的成本
    • 以 const-reference 传参能够避免 slicing(对象切割)问题。当一个 derived class 对象以 by value 方式传递并被视为一个 base class 对象,那么子类的特化部分会被切割掉
    • 对于内置类型,以及 STL 的迭代器和函数对象,pass-by-value 通常个合适