我希望能够做到这样的事情:
给定一个函数:
void some_func(int a, int b, int c) {
cout << a << b << c;
}
void generic_call(vector<int>& v) {
Args... args(<make_parameter_pack_from>(v));
some_func(args...);
}
make_parameter_pack_from()
接受一个参数向量,并以某种方式从中创建一个“参数包”,然后在调用some_func()
时可以将其扩展为其参数。
我需要这样做的原因是我在向量中给出了参数,不知何故我需要调用一个带有这些参数的普通C ++函数。
我可以使用类似libffi的东西来构造函数调用,但我真的希望有一些C ++可变参数模板魔法可以实现这一点。