当前位置:  开发笔记 > 编程语言 > 正文

是否可以检测指向成员函数的指针?

如何解决《是否可以检测指向成员函数的指针?》经验,为你挑选了1个好方法。

我想在指向成员函数的情况下使用特殊模板.有没有办法检测到这个?现在我声明struct isPtrToMemberFunc,然后为每个类添加一个额外的模板(类TType = void)(现在只是1)并专门化额外的模板以查看它是否为isPtrToMemberFunc.有没有办法自动检测到这个?如果不是我当前的方法是最好的解决方案?



1> Johannes Sch..:

有一种方法,但它包括为这些成员函数重复每个和每个参数以及const/volatile修饰符的专门化.更简单的方法是使用boost.functiontypes哪种方法:

template
void doit(T t) {
    if(boost::function_types::is_member_function_pointer::value) {
        std::cout << "it is";
        // ...
    } else {
        std::cout << "it is not";
        // ...
    }
}

从这里抓住它.

推荐阅读
手机用户2402852307
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有