通过引用传递的 Lambda 在构造函数中被调用时会运行,但在后来存储在数据成员中时不会运行。

通过引用传递的 Lambda 在构造函数中被调用时会运行,但在后来存储在数据成员中时不会运行。

💡 原文中文,约900字,阅读约需3分钟。
📝

内容提要

讨论了C++中Lambda函数的生命周期问题,当Lambda函数被转换为std::function时,会创建临时对象并在构造函数调用后销毁。解决方案是将std::function存储为值而不是引用。

🏷️

标签

➡️

继续阅读