BH
Size: a a a
BH
ПК
template <typename T, template <typename> concept IteratorConcept>
concept sequence = requires(T seq) {
{ std::begin(seq) } -> IteratorConcept;
{ std::end(seq) } -> IteratorConcept;
}
template <typename C>
requires sequence<C, std::input_iterator>
void for_each(const C& c) {
}
template <typename C>
requires sequence<C, std::random_access_iterator>
void sort(const C& c) {
}
random_access_sequence<C>
пишешь sequence<C, std::random_access_iterator>
AF
AF
D
random_access_sequence<C>
пишешь sequence<C, std::random_access_iterator>
ПК
#define BEFORE_COPY_HDL( handler_name ) BEFORE_COPY_HANDLER( handler_name, GEN_UNIQUE_ID( MethodHandlerName ) )
#define XGEN_UNIQUE_ID GEN_UNIQUE_ID
не сработает?AF
D
AF
AF
AF
BH
AF
AF
BH
#define GEN_UNIQUE_ID( id ) TOKENPASTE2( id, __COUNTER__ )
🎄T
#define BEFORE_COPY_HDL( handler_name ) BEFORE_COPY_HANDLER( handler_name, GEN_UNIQUE_ID( MethodHandlerName ) )
#define S_(x) x
#define S(x) S_(x)
🎄T
BH
BH
#define XGEN_UNIQUE_ID GEN_UNIQUE_ID
не сработает?Е
#define GEN_UNIQUE_ID( id ) TOKENPASTE2( id, __COUNTER__ )