Boostを語れゴラァ part4at TECH
Boostを語れゴラァ part4 - 暇つぶし2ch251:デフォルトの名無しさん
07/05/30 00:41:06
>247
>250
脊髄反射で全くはずれた事を書きそうになったけど、ちょい調べてみた。
↓の通り、基本的に lambda は参照ではなくてコピーした値を保持している。
URLリンク(www.boost.org)
が、(↑にも書いてあるけど)複合代入演算子の左辺は参照で保存される(当たり前)。
で、(多分実装の手抜きのため?)左辺と右辺で参照か値かが異なる場合が対応されていないため、
/= の右辺も(const だけど)参照で受けてしまう。
cf. lambda/detail/operators.hpp

そのため、

_1 /= *max_element (c0.begin (), c0.end ())

の代わりに

_1 = _1 / *max_element (c0.begin (), c0.end ())

とすると、結果が c1 と同じになる。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch