T240516 Top-level const and Low-level const
本篇分享详细解释一下 Top-level const 和 Low-level const 的概念。 Top-level 和 Low-level 指的是名称修饰符所处的位置,const 是最常见的修饰符… Continue Reading T240516 Top-level const and Low-level const
Dive deep into the C++ core, and discover more!
本篇分享详细解释一下 Top-level const 和 Low-level const 的概念。 Top-level 和 Low-level 指的是名称修饰符所处的位置,const 是最常见的修饰符… Continue Reading T240516 Top-level const and Low-level const
本文想讨论一下人是如何成长的。仅是一家之言,可能都是错的,请理性阅读。 自上而下为学,自下而上为用。 知识本无边界,也非先天有之,人需要在自然界中生存,就必然会经历各种磨难险阻,久而久之,自然会积累一… Continue Reading 觉者和修者,知与行本是一体
Introduction 近日某个项目临近结束,书文档,写配置,发现网上的 CMake 教程颇旧,混乱不堪,且缺乏实际作用,难及需求。遂系统读了一些 Modern CMake 资料,撰文记录,以供参考… Continue Reading Configuring Transitive Dependencies with Modern CMake
本篇可以结合 Left-to-Right vs. Right-to-Left Coding Styles 阅读,属于同一主题。本篇侧重于讲解具体的类型推导规则。 Decltype Specifier … Continue Reading Mastering Placeholder Type Deduction
进入 Modern C++,声明风格由 Right-to-Left 逐渐转变为 Left-to-Right,个中差异,优劣得失,且看本篇内容。 前言 Classic C++ 中,声明风格是自右向左,如… Continue Reading Left-to-Right vs. Right-to-Left Coding Styles
元宵三五,夜雪初霁,蕙风透寒。 乘暇再更一个 C++26 的小特性,动机简单,看一下小例子: using Point3D = std::tuple<float, float, float>… Continue Reading C++26’s Placeholder variables with no name
目前进入 C++26 的特性当中,Pack Indexing 是较为有用的一个,值得谈谈。 发展背景 早期,C++ 元编程是摸着石头过河,许多特性只是当时情况下的权宜之计,并非最理想的解决方式。纵然非… Continue Reading C++26 Pack Indexing
岁月如驰,距前篇反射文章,已近两载。 C++23 工作殆尽,C++26 紧随其后,Relection 也有了一些新进展,本篇来看这些更新的些许内容。 相关作者 知识似树,发枝散叶,往往只需两三人而已。… Continue Reading Reflection for C++26
这是昨天群里的一个问题,但我想谈的是背后的本质问题。 这个问题其实可以简化为: template <typename …Args> void foo(std::function<… Continue Reading T240104 Failed to Passing a Lambda Expression to std::function
不知大家是否遇到过这样的代码: template <class… Args> void f(Args……) {} 参数包后面紧跟着 6 个 .,一般不是用 … 来扩展参数包… Continue Reading T240102 What does the …… mean in C++?