2 flagoop flagoop 于 2016.09.25 08:33 提问

vector中存入一个类成员函数

#include"test.h"

class cls_test
{
vectorvecf;
public:
cls_test();
int f();

};
cls_test::cls_test()
{
vecf.push_back(f);
}
int cls_test::f()
{
return 20;
}

int main()
{

return 0;

}

2个回答

u014559880
u014559880   2016.09.25 10:00
已采纳

#include
using namespace std;
class cls_test
{
typedef int(cls_test::*p)();
vector

vecf;
public:
cls_test();
int f();
};
cls_test::cls_test()
{
vecf.push_back(&cls_test::f);
}
int cls_test::f()
{
return 20;
}
int main()
{
return 0;
}

u014559880
u014559880   2016.09.25 10:02

vector 《p》vecf; 过滤掉了

u014559880
u014559880 回复flagoop: vector《int(cls_test::*)()》 vecf;也行啊
大约一年之前 回复
flagoop
flagoop 回复androiosymbian: 为什么一定要先typedef后才能用此类型,而不能直接写类型原型
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片