【发布时间】:2011-01-07 01:14:32
【问题描述】:
io_iterator_t enumerator;
kern_return_t result;
result = IOServiceAddMatchingNotification(
mNotifyPort,
kIOMatchedNotification,
IOServiceMatching( "IOFireWireLocalNode" ),
serviceMatchingCallback,
(void *)0x1234,
& enumerator );
serviceMatchingCallback((void *)0x1234, enumerator);
如果我将 serviceMatchinCallback 声明为静态,那么它可以工作,但我不希望它是静态的。有没有办法给它传递一个非静态回调函数?
谢谢
【问题讨论】:
-
你应该把标签从 c 改成 c++
-
您使用的是 C、C++ 还是 Objective-C?
-
是的,我应该提到它,它的 c++
-
@Martin:ISTR IOKit 示例驱动程序使用静态函数作为回调,所以也许可以保证这里有相同的链接。但是,是的,2068022 更通用。
标签: c++ function callback member non-static