您的位置:首页 > 其它

开发常见错误

2015-03-12 12:33 176 查看
今天写了个方法,结果老提示错误cannot assign to self outside of a method in the init family,想了半天都不知道怎么破

-(id)initwithUrlStr:(NSString *)urlStr setBlock:(void (^)(HttpDownLoadBlock
*, BOOL))a

{
if (self=[superinit]) {

self.data=[NSMutableDatadataWithCapacity:0];

self.httpRequestBlock=a;

}

return
self;

}
后来才知道只能在init方法中给self赋值,而Xcode判断是否为init方法规则为:方法返回id,并且名字以init+大写字母开头+其他为准则
那么将上述方法中init中后面的w改为大写W就好了,就这么简单,哈哈

2.编译时常见的错误
如果编译时老是这种错误,说明缺少libz.dylb导致的,加上就好了,该库是提供zip压缩和解压缩的库

"_inflateInit_", referenced from:


如果老是出现
std::string::reserve(unsigned long)", referenced from:

这样的错误,那么显然是编译时引用第三方的c++代码造成的,此时只需加入libzstdc++6.0.9.dylib即可,不要加入libstdc++.dylib即可,这样会减少部分错误,但是还是报错,还是得加入6.0.9的库。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: