АК
Size: a a a
АК
AF
struct A { void foo(); };
struct B : A { void bar(); };
static_assert(is_B_method(&B::bar));
static_assert(!is_B_method(&B::foo));
АК
АК
AF
АК
tag<T>
этому статическому методу в каждом классе T
, чтобы они "перестали" наследоватьсяВ
struct A { void foo(); };
struct B : A { void bar(); };
static_assert(is_B_method(&B::bar));
static_assert(!is_B_method(&B::foo));
template<typename T>
struct ptr_Mem:
std::false_type {};
template<typename T, class C >
struct ptr_Mem<T C::*> :
std::true_type {....};
АК
template<typename T>
struct ptr_Mem:
std::false_type {};
template<typename T, class C >
struct ptr_Mem<T C::*> :
std::true_type {....};
В
АК
S
&Foo::test
не заработает пока явно не скастишь его.АК
S
АК
struct C : B {}
S
struct C : B {}
AS
tag<T>
этому статическому методу в каждом классе T
, чтобы они "перестали" наследоватьсяAS
DF