如何解决这个错误(从不兼容的类型'NSStream *'分配'id <inputstream>')?</inputstream>

时间:2013-05-24 12:59:21

标签: objective-c macos

我正在做mac插件的升级代码。我找到了一种方法,但我无法理解这个错误。代码就在这里。它在.h文件中的定义。

id<OutputStream> _sendStream;

和方法位于.m文件中。

- (void)setSendStream:(NSStream *)stream {
    if (stream != _sendStream) {
        [_sendStream autorelease];
        _sendStream = [stream retain];
    }
}

此方法给出错误

  

从不兼容的类型“id<InputStream>

分配给“NSStream *

如何解决此错误,因为我是mac开发的新手。请帮帮我。

2 个答案:

答案 0 :(得分:0)

-(void)setSendStream:(id<OutputStream>)stream {
   //...
}

答案 1 :(得分:0)

NSStream对象不符合OutputStream协议。您的方法应如下所示:

- (void)setSendStream:(id <OutputStream>)stream
{ 
  if (stream != _sendStream) {
    [_sendStream autorelease];
    _sendStream = [stream retain];
  }
}