gpt4 book ai didi

C++传递函数指针

转载 作者:太空狗 更新时间:2023-10-29 19:52:16 25 4
gpt4 key购买 nike

我有以下功能

static void p (){

}

我想将指向 p 的函数指针传递给函数 x。

void x(void * ptr){

}

我正在尝试以下方法,但它不起作用。

...
x(ptr);

注意 x 和 p 属于不同的类。我收到以下编译错误。

invalid conversion from 'void (*)()' to 'void*' [-fpermissive]

最佳答案

它需要是:

void x(void(*function)())
{
// Whatever...
}

如果您使用的是 C++11,则可以 std::function :

void x(std::function<void()> function)
{
// Whatever
}

关于C++传递函数指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28348609/

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