2013-04-13 12 views

答えて

11

パラメータとして使用するの任意のオブジェクトに対して同じラムダを使用します。

関数の目的が呼び出し側のオブジェクトを変更することである場合、関数は非const参照を使用する必要があります。オブジェクトを変更せずにそのまま使用する場合は、const&を使用する必要があります。オブジェクトを内部ストレージにコピー/移動する場合は、値渡しする必要があります。

+3

私は、このフォーラムでいくつかのコメントを読んで、値によってファンクタを渡すことは慣用的であることを覚えています。ファンクタが範囲外に渡される危険性があるのであれば、バイナリイディオムが優れていると思います。 – Jeet

+1

非const参照でラムダを渡すと、それを変更できます。しかし、「ラムダを修正する」とはどういう意味ですか? – Ignorant

関連する問題