c++
1void test_dolambda(void(*lambda)()) { 2 int a = 0; 3 lambda(); 4} 5 6void test_lambda() { 7 auto lambda = []() {cout << a;}; 8 test_dolambda(lambda); 9}
ラムダの引数として渡せば可能ですが、受取先で沢山のローカル変数を使用しようとした時、引数が冗長になってしまいます。
ただ、このような実装ができるとすると、ラムダ式の受取先で、ラムダ内で参照する引数が存在しない可能性があるので、不可能であると思いますが、ラムダ式という、引数として渡すことを前提に作られているであろう物に、これらの問題を解決する素晴らしい方法があるのではないかと思っています。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。