【发布时间】:2020-02-10 06:58:23
【问题描述】:
在LWG 3182 中声明
18.4.2 [concept.same] 中
Same概念的规范:template<class T, class U> concept Same = is_same_v<T, U>; -1- Same<T, U> subsumes Same<U, T> and vice versa.似乎矛盾。仅从概念定义来看,
Same<T, U>不包含Same<U, T>,反之亦然。
但是,来自cppreference,
...满足交换性,即对于
T和U,is_same<T, U>::value == true任意两种类型当且仅当is_same<U, T>::value == true。
注意Same<T, U>被定义为is_same_v<T, U>,Same<T, U>怎么可能不包含Same<U, T>?
【问题讨论】:
标签: c++ c++-standard-library c++20 c++-concepts