gpt4 book ai didi

c++ - 高级函数指针?

转载 作者:行者123 更新时间:2023-11-28 00:32:36 26 4
gpt4 key购买 nike

在c++中可以实现以下吗?

int do_stuff(int one, int two)
{
...
return ...;
}

int main()
{
void *ptr = &do_stuff(6, 7);//DON'T CALL THE FUNCTION, just store a pointer

cout << *ptr;//call the function from the pointer without having to pass the arguments again
}

我知道这可以通过类来完成,但我尝试这样做的方式是否可行?

最佳答案

好吧,使用 c++11 和来自 std::function 和 std::bind 的一点魔法你可以。

std::function<int()> f = std::bind(&do_stuff,6,7);
std::cout << f();

关于c++ - 高级函数指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22247381/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com