gpt4 book ai didi

c++ - 定义 lambda 的一般准则

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:34:46 26 4
gpt4 key购买 nike

<分区>

现在我们可以在我们的代码库中使用 C++11 lambda,我们正在努力制定应该如何定义和使用它们的一般原则。我意识到这肯定有主观因素,但我认为也可能有一些对社区有用的更通用的经验法则。

定义 lambda 的一般原则是什么?

  • 您什么时候更喜欢通过引用 [&] 或值 [=] 来捕获?性能影响是什么?
  • 您应该在什么时候更喜欢显式捕获变量,例如 [&foo]
  • 在什么情况下应该指定返回类型? (C++14 比 C++11 对推断返回类型有更好的支持)
  • 在最好将 lambda 重写为函数之前,lambda 能有多复杂?

就个人而言,我目前的一般原则是“只要您需要一个简单的谓词或比较器,就使用 lambda”,但这可能意味着我错过了一些更强大的用例。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com