Effective Ranges: A tutorial for using C++2X rangesE�ective Ranges: A E�ective Ranges: A tutorial for using tutorial for using C++2x ranges C++2x ranges Je� Garland Je� Garland Created: 2023-10-03 Tue 08:50 1Intro Intro the beginning of the end – Observations and Future 8 . 1sum of squares sum of squares auto square = [](int x) {return x*x;}; auto add = [](int x, int y) {return x+y;}; auto square_view = rv::iota(0) //infinite range0 码力 | 56 页 | 15.30 MB | 6 月前3
Extending and Simplifying C++: Thoughts on Pattern Matching using 'is' and 'as', and Can C++ be 10x Simpler} if i is (in(10,30)) { std::cout << "i is between 10 and 30" << std::endl; } 2Or like that? x as Type; 31 If you have C++20 compiler (GCC 10+, Clang 12+, MSVC 16.30+) Available now!Advancing C++20 x is Type x is Type ? x is value x is (value) ? x is predicate x is (predicate) ? x is empty x is empty ? x is Template x is Template ? x is Concept x is Concept ? X is Type X is Y ? X is Concept Concept X is Concept ? X is Template X is Template ? Testing Variable Testing Type 15x is Type Actual type Expected template< typename C, typename X > constexpr auto is( X const& ) -> bool; is(x); 0 码力 | 108 页 | 5.08 MB | 6 月前3
Common Package Specification: Getting Build Tools to Talk to Each OtherProblem definition and scope 1. Define the version to use 2. Define the configuration: Windows, x86_64, VS-2022, Release, static library 3. Install (system package manager or language package manager) Package Description Format for External C++ Libraries by Luis Caro Campos - CppCon22 9 set(_ZLIB_x86 "(x86)") set(_ZLIB_SEARCH_NORMAL PATHS "[HKEY_LOCAL_MACHINE\\SOFTWARE\\GnuWin32\\Zlib;InstallPath]" hints - Conclusions and next steps 13Implementation experience - ConanCenter: - 1500 recipes x 3 versions x 100 binaries = 500K packages - 3,1 million packages download/month = 16Tb/month 14Implementation0 码力 | 94 页 | 1.58 MB | 6 月前3
Common Package Specification (CPS) in Practice: A Full Round Trip Implementation in Conan C++ Package ManagerPackage Description Format for External C++ Libraries by Luis Caro Campos - CppCon22 6 set(_ZLIB_x86 "(x86)") set(_ZLIB_SEARCH_NORMAL PATHS "[HKEY_LOCAL_MACHINE\\SOFTWARE\\GnuWin32\\Zlib;InstallPath]" existing Conan packages ZLib Demo: Generate CPS files zlib.cps 13 … … Creates CPS Read CPS X zlib.cpsDemo: Generate CPS files $ conan install . -g CPSDeps cppcon24/pose_ai 15CPSDeps from conan conan2/p/flac14b90fabbd015/p/lib/libFLAC++.a" } }Public and available CPS - 1500 recipes x 3 versions x 100 binaries = 500K packages - Almost 6000 PRs in 2023 - 3,1 million packages download/month0 码力 | 66 页 | 1.76 MB | 6 月前3
Conan 1.26 Documentationthe tool and the platform. This means: • Moving forward to following minor versions 1.1, 1.2, ..., 1.X should never break existing recipes, packages or command line flows • If something is breaking, it compatibility is always considered forward. New APIs, tools, methods, helpers can be added in following 1.X versions. Recipes and packages created with these features will be backwards incompatible with earlier es/112. • Conan works with Python 2.7, but not all features are available when not using Python 3.x starting with version 1.6 2.1.1 Known installation issues with pip • When Conan is installed with0 码力 | 669 页 | 5.51 MB | 1 年前3
Conan 1.25 Documentationthe tool and the platform. This means: • Moving forward to following minor versions 1.1, 1.2, ..., 1.X should never break existing recipes, packages or command line flows • If something is breaking, it compatibility is always considered forward. New APIs, tools, methods, helpers can be added in following 1.X versions. Recipes and packages created with these features will be backwards incompatible with earlier es/112. • Conan works with Python 2.7, but not all features are available when not using Python 3.x starting with version 1.6 2.1.1 Known installation issues with pip • When Conan is installed with0 码力 | 655 页 | 5.45 MB | 1 年前3
Conan 1.31 Documentationcompanies, and consequently, it has a commitment to stability, with no breaking changes across all Conan 1.X versions. CONTENTS 1 Conan Documentation, Release 1.31.4 2 CONTENTS CHAPTER ONE INTRODUCTION the tool and the platform. This means: • Moving forward to following minor versions 1.1, 1.2, ..., 1.X should never break existing recipes, packages or command line flows • If something is breaking, it compatibility is always considered forward. New APIs, tools, methods, helpers can be added in following 1.X versions. Recipes and packages created with these features will be backwards incompatible with earlier0 码力 | 721 页 | 5.41 MB | 1 年前3
Conan 1.30 Documentationthe tool and the platform. This means: • Moving forward to following minor versions 1.1, 1.2, ..., 1.X should never break existing recipes, packages or command line flows • If something is breaking, it compatibility is always considered forward. New APIs, tools, methods, helpers can be added in following 1.X versions. Recipes and packages created with these features will be backwards incompatible with earlier es/112. • Conan works with Python 2.7, but not all features are available when not using Python 3.x starting with version 1.6 3.1.1 Known installation issues with pip • When Conan is installed with0 码力 | 715 页 | 5.39 MB | 1 年前3
Conan 1.28 Documentationthe tool and the platform. This means: • Moving forward to following minor versions 1.1, 1.2, ..., 1.X should never break existing recipes, packages or command line flows • If something is breaking, it compatibility is always considered forward. New APIs, tools, methods, helpers can be added in following 1.X versions. Recipes and packages created with these features will be backwards incompatible with earlier es/112. • Conan works with Python 2.7, but not all features are available when not using Python 3.x starting with version 1.6 2.1.1 Known installation issues with pip • When Conan is installed with0 码力 | 699 页 | 5.39 MB | 1 年前3
Conan 1.29 Documentationthe tool and the platform. This means: • Moving forward to following minor versions 1.1, 1.2, ..., 1.X should never break existing recipes, packages or command line flows • If something is breaking, it compatibility is always considered forward. New APIs, tools, methods, helpers can be added in following 1.X versions. Recipes and packages created with these features will be backwards incompatible with earlier es/112. • Conan works with Python 2.7, but not all features are available when not using Python 3.x starting with version 1.6 2.1.1 Known installation issues with pip • When Conan is installed with0 码力 | 703 页 | 5.41 MB | 1 年前3
共 336 条
- 1
- 2
- 3
- 4
- 5
- 6
- 34













