C++ 存储参数和函数并在另一个函数中使用

C++ 存储参数和函数并在另一个函数中使用,c++,variadic-templates,stdtuple,c++17,c++14,c++11,C++,Variadic Templates,Stdtuple,C++17,C++14,C++11,欢迎,这是非常罕见的用例问题。 下面是我要做的-假设我有一个可变模板函数,它接受T…args和一个函数类型FuncT funcName,下面是我们到目前为止得到的: 模板 void myFunction(FuncT(*funcName),T…args); 现在,我想将我的函数存储在void(*)((此存储函数)。这个很好用 std::deque函数; func=functions.front(); func(std::forward(args)…)//args是vardict模板参数 现在,

欢迎,这是非常罕见的用例问题。
下面是我要做的-假设我有一个可变模板函数,它接受
T…args
和一个函数类型
FuncT funcName
,下面是我们到目前为止得到的:

模板
void myFunction(FuncT(*funcName),T…args);
现在,我想将我的函数存储在
void(*)(
(此存储函数)。这个很好用

std::deque函数;
func=functions.front();
func(std::forward(args)…)//args是vardict模板参数
现在,我可以将一个函数传递给我的函数,如下所示:

模板
int sharedArgument;
无效设置参数(整数x){
sharedArgument=x;
}
模板
void myFunction(FuncT funcName){
funcName(sharedArgument);
}
虚函数(int i){
std::cout使用。它在中是新的。如果不能,请编写自己的

在中,创建一个与元组长度相同的索引序列。然后
func(std::get(std::forward(tup))…)

在中,执行相同的操作,但编写自己的索引序列。

将函数和参数存储在一起。它返回一个封装参数值副本的可调用对象


如果调用
queue.front()后需要添加额外的参数,也可以使用它的“占位符”功能

元组是可变长度的,这是problem@armaapply可用于可变长度元组。只要您知道函数类型和元组类型,只需使用实际正确类型的值调用apply即可。谢谢,我很高兴知道是否有c++11方法可以像apply一样工作,但仍然标记为answear,谢谢!soo
std::bind