Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
这最初是这个问题的一部分:
通过非常量引用将使用自动关键字声明的 lambda 作为参数传递给 std::function 参数类型
但我决定将其单独制作。
在什么情况下通过引用或值传递 lambda 或其他函数对象更好/更惯用?
您对“lambda”使用与作为参数的任何对象相同的规则。
如果函数的目的是为调用者修改对象,则函数应该使用非常量引用。const&如果该函数只是使用对象而不更改它,则应该使用该函数。如果要将对象复制/移动到其内部存储中,它应该按值传递。
const&