小编Ste*_*pin的帖子

C++20 概念:GCC 和 Clang 中具有指针类型成员的复合需求表达式的行为差异

考虑以下代码(Godbolt):

#include <iostream>
//#include <concepts>
#include <type_traits>

// Since the latest clang doesn't have <concepts>,
// took this here: https://en.cppreference.com/w/cpp/concepts/same_as
// Using of std::same_as still gives an error in GCC.
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>;

template<typename T>
concept HasStr = requires(T a) { { a.str } -> same_as<const char*>; };

struct A {
    const …
Run Code Online (Sandbox Code Playgroud)

c++ c++-concepts c++20

5
推荐指数
1
解决办法
225
查看次数

标签 统计

c++ ×1

c++-concepts ×1

c++20 ×1