diff --git a/cpp_basics_for_STL.typ b/cpp_basics_for_STL.typ index e1afc4d5ed724e1df4177136aef854a5ae0ae28a..301b157c84f93dc33b6acb2f2ad855b14a782f82 100644 --- a/cpp_basics_for_STL.typ +++ b/cpp_basics_for_STL.typ @@ -278,6 +278,30 @@ int x = add_cst(10); // x vaut 12 ]) ] +#slide(title: "Les captures totales")[ +On peut également copier l'environnement au complet : + +#box(columns(2, gutter: 22pt)[ +== Par copie +```cpp +int var = 5; +auto add_cst = [=](int i) + { return i+var; }; +var = 2; +int x = add_cst(10); // x vaut 15 +``` +#colbreak() +== Par référence +```cpp +int var = 5; +auto add_cst = [&](int i) + { return i+var;}; +var = 2; +int x = add_cst(10); // x vaut 12 +``` +]) +] + #new-section-slide("Algorithmes STL") #new-section-slide("Notions à retenir")