问题描述
我正在阅读std::same_as
的文档,看来它只是转发到std::is_same_v
。 cppreference具有以下示例实现:
namespace detail {
template< class T,class U >
concept SameHelper = std::is_same_v<T,U>;
}
template< class T,class U >
concept same_as = detail::SameHelper<T,U> && detail::SameHelper<U,T>;
如果&&
是可交换的,为什么std::is_same_v
甚至是必要的?并且,如果std::same_as
具有相同的语义,那么我需要什么呢?我也可以使用std::is_same_v
作为这样的约束:
template <typename T>
void test(T x) requires std::is_same_v<T,int> {}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)