objective-c - 相同的代码在一个项目中产生错误,但不会在另一个项目中产生错误

标签 objective-c ios ios5

我正在尝试重用另一个项目的代码,但是在复制类时,它在新项目中生成了编译器错误,但是当它在另一个项目中时,它工作得很好。

错误是

    Cannot initialize a parameter of type 'const uint8_t *' (aka 'const unsigned char *') with an rvalue of type 'const void *'

代码是

    [outputStream write:[userdata bytes] maxLength:[userdata length]];

outputStream 是一个 NSOutputStream,userdata 是一个 NSData 对象。 两个项目都使用围绕此语句的相同代码。

这两个项目都针对相同的目标操作系统 (iOS 5.0) 和架构 (armv7) 进行编译,并且都添加了相同的框架。

我还尝试清理项目,然后重新构建它。同样的问题。

如有任何帮助,我们将不胜感激。

最佳答案

最后,通过转换解决了这个问题:

[outputStream write:(const uint8_t *)[userdata bytes] maxLength:[userdata length]];

然后是清理和构建(如果不清理,会出现不同的错误。)

关于objective-c - 相同的代码在一个项目中产生错误,但不会在另一个项目中产生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9039912/

相关文章:

iphone - 多个 View Controller 的重复代码

iphone - 检测设备上有多少应用处于运行模式

ios - 关于为什么这个 Swift 代码不能编译的任何想法?

ios - 将 UiSlider 间隔设置为 0.5

android - iOS和Android平台添加联系人时是否可以收到通知?

ios - 如何向从 dequeueReusableCellWithReuseIdentifier 返回的 UICollectionViewCell subview 添加点击手势

ios - 如何以编程方式对 UILabel 应用约束,使其位于 Objective C 中 View 底部上方 20px

iphone - 仪表自动化 : iterate for all buttons

ios - UIActivityViewController 的短信窗口变得部分透明

objective-c - 如何从iPhone应用程序中的服务器播放视频URL