使用C ++ GitHub Tick库检查Enable_IF的功能

时间:2019-05-08 06:19:18

标签: c++ sfinae typetraits

我正在使用Tick Library进行特征检查。 在如何检查类中是否存在方法方面需要帮助,但在这种情况下,应检查其签名中带有std::enable_if的方法。

使用Tick作为方法没有问题,但是我从未尝试过使用std::enable_if的方法。

在我的情况下,当我删除std::enable_if模板时,Tick便找到了该方法,但我真正需要的是Tick找到使用std::enable_if的方法的一种方法,如下所示:

static const bool bSomeBool {true};

template <class = typename std::enable_if<bSomeBool>::type>
inline  int DoStuff()
{
    return SomeFunction();
}


TICK_TRAIT(MyTraitCheck)
{
    int result;

    template<class T_SomeType>
    auto require(T_SomeType&& rrSomeTypeObj)->valid <

            decltype(result = rrSomeTypeObj.DoStuff())

    >;//valid


};

0 个答案:

没有答案