发现一个小bug 官方文档AudioFileOpenWithCallbacks描述有误

本文解决使用AudioFileOpenWithCallbacks时遇到的参数类型错误问题,发现官方文档与实际头文件中AudioFile_WriteProc和AudioFile_SetSizeProc的声明存在差异。

今天使用AudioFileOpenWithCallbacks异步读取文件时,总是提示AudioFileOpenWithCallbacks第三个和第五个参数类型不对,也就是

AudioFile_WriteProc和AudioFile_SetSizeProc两个异步函数,可是明明是按照文档定义的,奇怪的很。文档里这两个函数分别声明为

typedef OSStatus (*AudioFile_WriteProc) (
    void          *inClientData,
    SInt64        inPosition,
    UInt32        requestCount,
    const void    *buffer,
    UInt32        *actualCount
);

typedef SInt64 (*AudioFile_SetSizeProc)(
    void  *inClientData
);

折腾了好久,偶然打开了头文件的声明,发现了大有不同,系统文件里声明如下:

typedef OSStatus (*AudioFile_WriteProc)(
								void * 		inClientData,
								SInt64		inPosition, 
								UInt32		requestCount, 
								const void *buffer, 
								UInt32    * actualCount);


typedef OSStatus (*AudioFile_SetSizeProc)(
								void *		inClientData,
								SInt64		inSize);

相信明眼人都能看到明显的不同,参数的类型和个数不同,函数类型不一致。这里本人使用的开发环境为10.6.8+XCODE4.2,不知道是官方文档描述有误,还是源码定义有误,很奇怪。

转载于:https://www.cnblogs.com/CoderPlace/archive/2012/04/25/2470300.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值