adapting c++20 ranges algorithms for most metaprogramming

💡 原文中文,约1900字,阅读约需5分钟。
📝

内容提要

在cppnow 2023的演讲中,daisy展示了简化模板元算法的技巧。她以排序为例,通过将type_list中的每个Type映射到它们的index,然后对index数组进行排序,最终重新安放type_list中的元素。她展示了一个巧妙的排序算法,使用variant数组和std::visit访问数组中的元素。通过使用std::type_identity作为仿函数参数,解决了一些类型无法作为参数的问题。最后,她展示了如何根据类型的大小对type_list中的类型进行排序。

➡️

继续阅读