对的,这个是core guideline推荐的姿势。实际使用中有时候对lambda的signature有限制,不得不做capture。
- 来自 水木社区APP v3.5.7
【 在 ziqin 的大作中提到: 】
: 所以,我觉得不使用this auto self的情况下,正确的姿势是
: MyCoroutine my_coroutine(int a)
: {
: auto lambda = [](int a) -> MyCoroutine
: {
: std::printf("%d\n", a);
: co_return;
: };
: return lambda(a);
: }
:
: 在某种意义上,this auto self就是为了打包把所有的都放进去,但是估计可能会引起更多的heap上的复制工作,影响性能
: --
: 善良与其说是本质,不如说是一种生活方式
:
:
--
FROM 116.169.6.*