More Ranges Please## +23 ## More Ranges Please ## ROI BARKAN  ## 20 23 October 01 - 06 ## Hi, I'm Roi • Roi Barkan (he/him) - Ψηη 8/6/6386ec7baac2ff5a73f34700e7205779/p3_2.jpg) H ## Outline • Libraries What Why ○ How • Ranges ○ Introduction Strengths, core ideas Rabbits • Summary ## ▶️▶️▶️▶️ ## Libraries roi.barkan@gmail [Image](/uploads/documents/6/3/8/6/6386ec7baac2ff5a73f34700e7205779/p11_3.jpg) ## ▶️▶️▶️▶️ ## C++ Ranges roi.barkan@gmail.com ## Ranges is a Breakthrough Library One of C++20 big-four features Rests on decades of existing0 码力 | 27 页 | 1.08 MB | 1 年前3
Effective Ranges: A tutorial for using C++2X rangesEffective Ranges: A tutorial for using C++2x ranges Jeff Garland Created: 2023-10-03 Tue 08:50 ## I ntro the beginning of the end – for begin and end ## hello ranges ## the old way: sort std::arraystd::sort ( a.begin(), a.end() ); for ( auto v : a ) cout << v << " " << endl; ## the ranges way: sort namespace rng = std::ranges; std::arrayclear, obvious meaning, -13 characters std::print("{}", a); // [1, 2, 3, 4, 5, 6] • https://godbolt.org/z/o478PEMff ## the old way: find_if std::arraya { 6, 2, 3, 4, 5, 1 }; 0 码力 | 56 页 | 15.30 MB | 1 年前3
Implementing Particle Filters with Ranges## Implementing Particle Filters With Ranges ## NAHUEL ESPINOSA  ## ABOUT ME  ## C++ RANGES LIBRARY Extension and generalization of the algorithm and iterator libraries. (C++98) algorithm(begin(range), end(range)) → result ## C++ RANGES LIBRARY ## Extension and0 码力 | 83 页 | 4.70 MB | 1 年前3
Template-Less Meta-Programming## Template-Less MetaProgramming 0 ## +24 ## KRIS JUSIAK 2024 September 15 - 20 ## Template Metaprogramming (TMP) templateusing meta_fun = this_talk ## Policies constexpr std::array protocols{ std::pair{"ftp"sv, protocol::FTP}, std::pair{"file"sv, protocol::FILE}, std::pair{"http"sv, protocol::HTTP}, std::pair{"ws"sv protocol::WS}, } ; std::pair{"wss"sv, protocol::WSS}, ## [Examples] Performance / Policies constexpr std::array protocols{ std::pair{"ftp"sv, protocol::FTP}, std::pair{"file"sv; 0 码力 | 130 页 | 5.79 MB | 1 年前3
min max and Moreselected operator < as its ordering primitive, and even spells it in several different ways (e.g., std::less). - This talk will explain why operator < (and its aliases) must be used with care, in even a function object type [whose] call operation ... yields true if the first argument of the call is less than the second, and false otherwise." “... comp [induces] a strict weak ordering on the values s/comp/less than/ or s/comp/it/ or s/comp/precedes/.) ## Or we can avoid overloading ... via a single template that has judicious default arg's: - template< class Fwd, class Compare = std::ranges::less0 码力 | 8 页 | 2.48 MB | 1 年前3
Limitations and Problems in std::function and Similar## +24 ## Limitations and Problems in std::function and Similar Mitigations and Alternatives ## AMANDEEP CHAWLA ## Limitations and Problems in std::function and similar constructs Amandeep Chawla | notifyTQ, std::function)> callback ); ## Lambdas // print all the elements of vector of int. std::for_each(c.begin(), c.end(), [(int i) { std::cout std::cout << i << ' "; }); // Sort the vectorusing a lambda function std::sort(v.begin(), v.end(), [](int a, int b) { return a < b; }); // find the object with id "c" 0 码力 | 62 页 | 3.57 MB | 1 年前3
Spanny 2: Rise of std::mdspan## +24 ## spanny 2: Rise of std::mdspan ## GRISWALD BROOKS ## 20 24 September 15 - 20 ##### DISCLAIMER: C++23... ish  understanding of std::mdspan layouts and accessors • how to write custom layouts and accessors • dispel common misconceptions about both ## how • motivations for std::mdspan - review std::mdspan declaration memory accessor improving memory access using asynchronicity ## how • motivations for std::mdspan - review std::mdspan declaration • layouts and their requirements • occupancy grids and default layouts0 码力 | 117 页 | 2.02 MB | 1 年前3
A Long Journey of Changing std::sort Implementation at Scale## A Long Journey of Changing std::sort Implementation at Scale ## DANILA KUTENIN ## WHO AM I? • Senior Software Engineer at Google • DC efficiency ## AGENDA FOR TODAY • History of sorting • Why have elements • std::sort, std::stable_sort, ranges::sort, etc std::sort(begin, end); std::ranges::sort(cont); ## REMINDERS • Sorting is the ordering of elements • std::sort, std::stable_sort, ranges::sort, etc std::sort(begin, end, comp); std::ranges::sort(cont, comp); ## QUICKSORT ## QUICKSORT • Quick sort ## QUICKSORT • Quick sort • Take any element ## QUICKSORT • Quick sort • Take any element0 码力 | 182 页 | 7.65 MB | 1 年前3
15 less known webpack features in 15 minutes##### Did you know ...? 15 less known webpage features in 15 minutes ## Goals Goals • Overview over less known features • Short • Learn something new • Code Samples Non-Goals • Detailed How-to-Use0 码力 | 21 页 | 695.29 KB | 2 年前3
Distributed Ranges: A Model for Building Distributed Data Structures, Algorithms, and Views## +23 ## Distributed Ranges: A Model for Building Distributed Data Structures, Algorithms, and Views ## BENJAMIN BROCK ## Notices and Disclaimers For notices, disclaimers, and details about performance return reduce(par_unseq, z, 0, std::plus()); }  ## Outline - Background (Ranges, Parallelism, Distributed Data - Distributed Ranges (Concepts) - Implementation (Algorithms and views) - Complex Data Structures (Dense and sparse matrices) - Lessons learned ## Outline - Background (Ranges, Parallelism, Distributed0 码力 | 127 页 | 2.06 MB | 1 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100
相关搜索词
RangesC++composabilitylazy rangesfunctional languagesC++2x rangesranges algorithmsprojectionsview adaptersconceptsParticle FiltersSTLC++23RoboticsTemplate Metaprogrammingboost.mp11Circle-langvalue-based metaprogrammingcompile timeminmaxoperator <std::ranges::less算法稳定性std::functionMitigationsAlternativesPerformanceOptimizationstd::mdspanlayoutaccessorasynchronouspolicystd::sortC++标准库排序算法严格弱序调试模式Webpackimport()魔注释electron目标DIIPlugin分布式范围分布式数据结构分段处理分布式算法并行计算













