开发常见错误
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压缩和解压缩的库
如果老是出现
std::string::reserve(unsigned long)", referenced from:
这样的错误,那么显然是编译时引用第三方的c++代码造成的,此时只需加入libzstdc++6.0.9.dylib即可,不要加入libstdc++.dylib即可,这样会减少部分错误,但是还是报错,还是得加入6.0.9的库。
-(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的库。
相关文章推荐
- CrystalReport开发常见错误总结
- 程序员应该避免六个常见的开发错误
- asp.net程序员六个常见的开发错误
- symbian 开发常见错误代码及原因总结
- Jbuilder开发环境配置连接池常见错误及解决
- 软件开发过程系统常见的错误及处理机制
- 开发常见错误解决(1)注册.NET EnterpriseServices COM+组件,事务服务不可用
- Mozilla XPCOM组件开发常见错误解决方法
- .Net开发过程中安装、调试的常见问题与错误!!!
- 【开发经验】Struts常见错误及原因分析
- 程序员应该避免六个常见的开发错误
- 软件开发需求分析五个常见错误及应对措施
- 软件开发需求分析五个常见错误及应对措施
- web设计与开发常见错误
- 【开发经验】Struts常见错误及原因分析
- 程序员应该避免六个常见的开发错误
- VC开发常见错误备忘
- asp.net程序员六个常见的开发错误
- MOSS开发常见错误信息
- 开发常见错误解决(1)注册.NET EnterpriseServices COM+组件,事务服务不可用