From f4fbeef831fb47c9ccac2b56c8699dea0fb9b459 Mon Sep 17 00:00:00 2001 From: hxf0223 Date: Mon, 19 Aug 2024 17:09:26 +0800 Subject: [PATCH] update note --- _posts/2024-08-13-std-function.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/_posts/2024-08-13-std-function.md b/_posts/2024-08-13-std-function.md index b3dddb3..00ecc82 100644 --- a/_posts/2024-08-13-std-function.md +++ b/_posts/2024-08-13-std-function.md @@ -68,7 +68,9 @@ int main() { ## 5. lambda 表达式 -`lambda`表达式是一个匿名`函数对象`,即编译器会创建一个匿名对象,并将外部捕获的变量,添加到该匿名对象中。这些是`lambda`的额外开销。 +`lambda`表达式是一个匿名`函数对象`,即编译器会创建一个`仿函数`( 调用时,调用 `operator()(....)` ),并将外部捕获的变量,添加到该匿名对象中。这些是`lambda`的额外开销。 + +注:在`O2`编译时,仿函数也会被优化掉,直接编译成跳转代码段。 ```cpp int main()