ad alanı üye varlığını test etmek için sfinae kullanmanın mümkün olup olmadığını anlamaya çalışıyordum. Google, bu konuda oldukça sessiz. Aşağıdaki kodu denedim, ancak başarısız oluyor.ad alanı üyeleri varlığını test etmek için sfinae kullanın
namespace xyz{
struct abc{};
}
struct abc{};
struct test_xyz{
typedef char yes;
typedef struct{ char a[2]; } no;
template <class C> static yes test(xyz::C = xyz::C()); //lets assume it has default constructor
template <class C> static no test(...);
const bool has_abc = sizeof(test_xyz::test<abc>()) == sizeof(yes);
};
Neden olursa olsun?
Saygılarımızla,