相关疑难解决方法(0)

理解C中函数指针的typedef

当我读到其他人的代码时,我总是有点难过,这些代码的typedef用于指向带参数的函数的指针.我记得在尝试理解用C语言编写的数值算法时,我花了一些时间来解决这个定义.那么,您是否可以分享您关于如何编写好的typedef指向函数(Do和Do)的提示和想法,为什么它们有用以及如何理解其他人的工作?谢谢!

c typedef function-pointers

225
推荐指数
6
解决办法
26万
查看次数

功能参考

所以我只是使用函数指针,我记得你可以这样做:

void Foo()
{
}

int main()
{
    void(& func)() = Foo;

    func(); //::Foo();
}
Run Code Online (Sandbox Code Playgroud)

明显的优点是引用引用有效对象(除非它们被误用),或者在这种情况下是函数.

明显的缺点是你不能存储一个引用数组,并且不能将它们用于成员函数指针(至少就我所知).

我的问题:有没有人使用它们(即函数引用,而不是函数指针),如果是这样,在什么情况下你发现它们有用/有用?

在使用条件编译时,唯一可以看到它们有用的地方是绑定对某个函数的引用.

c++

49
推荐指数
3
解决办法
3万
查看次数

标签 统计

c ×1

c++ ×1

function-pointers ×1

typedef ×1