根据我的阅读,Core Audio在很大程度上依赖于回调(和C ++,但这是另一回事)。
我了解设置功能的概念(某种程度上),该功能被另一个功能反复调用以完成任务。我只是不了解他们如何设置以及他们如何实际工作。任何示例将不胜感激。
C语言中没有“回调”-最多不超过任何其他通用编程概念。
它们是使用函数指针实现的。这是一个例子:
void populate_array(int *array, size_t arraySize, int (*getNextValue)(void))
{
for (size_t i=0; i<arraySize; i++)
array[i] = getNextValue();
}
int getNextRandomValue(void)
{
return rand();
}
int main(void)
{
int myarray[10];
populate_array(myarray, 10, getNextRandomValue);
...
}
在此,populate_array
函数将函数指针作为其第三个参数,并调用它以获取用于填充数组的值。我们已经编写了回调getNextRandomValue
函数,该函数返回一个随机值,并将指向它的指针传递给populate_array
。populate_array
将调用我们的回调函数10次,并将返回的值分配给给定数组中的元素。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句