C++17 · 编译期选择
重载·特化·约束选择器
可行候选最终选择类模板路径
02 匹配质量
03 决胜规则
04 最终选择
类模板 shape_of<T> 的路径
函数模板不支持偏特化
要处理一类调用形状(例如所有指针),新增函数模板重载,让它作为独立候选参与决议。
void_t / static_assert 检查的是语法
它们能探测表达式是否成立、结果能否转成 bool,却不能证明比较器满足严格弱序等语义约定。