2

特別なライブラリを使わずに、C++03 で基本的なラムダ式をシンプルかつエレガントでスマートな方法で実装する方法を教えてください。次のようなことができるようにする必要があります。

for_each(some_vector.begin(), some_vector.end(), _first = -5)
sort(some_vector.begin(), some_vector.end(), _first > _last)

StackOverflow やインターネットの他の場所で多くのトピックを見てきましたが、残念ながら、役立つものは見つかりませんでした。もう 1 つのアイデアは、Boost の実装を注意深く検討することですが、残念ながら、私のレベルは今のところあまり適切ではありません。

前もって感謝します!

4

1 に答える 1

5

私の知る限り、ラムダの最も一般的な実装手法は式テンプレートです。

この記事は優れた紹介を提供しますが、C++ TMP に関する本を 1 冊入手して、さらに詳しい洞察を得る必要があります。

于 2011-12-12T15:59:36.550 に答える