Использование SFINAE для определения функции-члена [дубликат]

На этот вопрос уже есть ответ:

Можно ли написать шаблон для проверки существования функции? 25 ответов

В C ++ 11, чтобы узнать, есть ли у класса функция-членsize, вы можете определить следующий помощник по тестированию:

template <typename T>
struct has_size_fn
{
    typedef char (& yes)[1];
    typedef char (& no)[2];

    template <typename C> static yes check(decltype(&C::size));
    template <typename> static no check(...);

    static bool const value = sizeof(check<T>(0)) == sizeof(yes);
};

Есть ли похожая хитрость для этого в C ++ 98 без использования расширений компилятора, таких какtypeof?

Ответы на вопрос(2)

Ваш ответ на вопрос