From 3691b5e9021fa540e21283b24435bf57f8cc8a13 Mon Sep 17 00:00:00 2001 From: mzg <5487654@qq.com> Date: Mon, 12 Sep 2022 18:36:45 +0800 Subject: [PATCH] complete closure --- .../11.\351\227\255\345\214\205/closure.json" | 7 +++++++ .../11.\351\227\255\345\214\205/closure.md" | 8 ++++++++ .../11.\351\227\255\345\214\205/config.json" | 4 +++- 3 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 "data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/closure.json" create mode 100644 "data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/closure.md" diff --git "a/data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/closure.json" "b/data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/closure.json" new file mode 100644 index 0000000..e74acd3 --- /dev/null +++ "b/data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/closure.json" @@ -0,0 +1,7 @@ +{ + "type": "code_options", + "author": "jackymao_com", + "source": "closure.md", + "notebook_enable": false, + "exercise_id": "" +} \ No newline at end of file diff --git "a/data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/closure.md" "b/data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/closure.md" new file mode 100644 index 0000000..6042a1a --- /dev/null +++ "b/data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/closure.md" @@ -0,0 +1,8 @@ +# 闭包 + +闭包是一个匿名函数。它和普通的函数有几个区别: +- 闭包的参数写在两个竖线中间 +- 闭包可以捕获环境中的变量 + +当闭包被定义,编译器会隐式地创建一个匿名类型的结构体,用以储存闭包捕获的变量。同时,编译器会按这个闭包捕获的变量的使用方式,为这个未知类型的结构体实现 Fn、FnMut 或 FnOnce 三种 trait 中的一种。 + diff --git "a/data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/config.json" "b/data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/config.json" index 4c24c0f..088ee6c 100644 --- "a/data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/config.json" +++ "b/data/1.rust\345\210\235\351\230\266/2.rust\345\237\272\346\234\254\346\246\202\345\277\265/11.\351\227\255\345\214\205/config.json" @@ -2,7 +2,9 @@ "node_id": "rust-ae575862bf6d4a03b773963ea2641edf", "keywords": [], "children": [], - "export": [], + "export": [ + "closure.json" + ], "keywords_must": [], "keywords_forbid": [] } \ No newline at end of file -- GitLab