一位同事询问了这种守则中最初有模板的类似守则。
我删除了模板,但核心问题仍然是:为什么把科索沃汇编成册?
#include <iostream>
class X
{
public:
void foo() { std::cout << "Here
"; }
};
typedef void (X::*XFUNC)() ;
class CX
{
public:
explicit CX(X& t, XFUNC xF) : object(t), F(xF) {}
void execute() const { (object.*F)(); }
private:
X& object;
XFUNC F;
};
int main(int argc, char* argv[])
{
X x;
const CX cx(x,&X::foo);
cx.execute();
return 0;
}
鉴于CX是个目标,其成员职能execute<>em>,因此在CX中:可以选择ts点。
但是,我可以通过一个成员职能点来召集一个非成员的职能。
成员的职能点是否是世界上最自然的有文件记载的漏洞?
我们错过了什么问题(对其他人来说可能是显而易见的)?