【发布时间】:2012-10-11 01:21:33
【问题描述】:
类型void(*)(void *)是什么意思?
我在“Mastering Algorithms with C”一书的示例代码中遇到了这种类型
void list_init(List *list, void (*destroy)(void *data))
{
...
...
}
【问题讨论】:
-
一个函数指针,指向一个以 void 指针为参数的函数
-
螺旋规则:指向一个函数的指针,该函数采用指向 void 的指针并且不返回任何内容.
-
顺便说一句,如果您使用的是 C++11,则它变成了
std::function<void(void *)>,它更具可读性和实用性。在执行此操作时,如果您需要任何类型,则可以将void *替换为模板。
标签: c++ c function-pointers