我看到了这个模板声明:
template<typename C, typename R, typename P1, typename P2> struct mystruct<R(C::*)(P1,P2)> { ... };
我知道 C::* 的意思是“指向 C 成员的指针”,但我不明白 R(C::*)(P1,P2) 的作用
最佳答案
R(C::*)(P1,P2)
指向类 C 的成员函数的指针,接受类型 P1 和 P2 的参数,返回 R。
该行作为一个整体是一个类模板特化(至少必须在某处存在 mystruct
的主模板声明)。
关于c++ - R(C::*)(P1,P2) 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14978426/