我需要在存储为类本身的静态成员的向量的每个元素上调用成员函数。如何将通用方法传递给静态函数
要做到这一点与ptfs我应该写很多代码,但我很确定有一个<functional>
机制比可以帮助我这一点。
语言是C++ 03(VS2010)
例如:
class C
{
static std::vector<C*> pool;
void a(){}
void b(){}
void c(){}
static void Call(anymethod am)
{
for(int i=0;i<(int)pool.size();i++)
{
pool[i]->am();
}
}
}`
std::vector<C*> C::pool;
您的问题缺少一些东西。这将是一个实际的具体问题。 –
偏离主题:而不是将大小转换为“int”并冒着循环中的溢出风险,请使用更合适的索引类型。 'size_t'应该为你做。 – user4581301
如果你总是想调用类C的成员函数,那么指向成员函数的指针就可以工作。 – Phil1970