在Swift 3中,如果没有使用返回值,则会出现警告。 @discardableResult声明将禁止该功能。
如何在ObjC文件中声明,与__attribute__((warn_unused_result))
答案 0 :(得分:4)
默认情况下,在ObjC中忽略函数的返回值,对于Swift< 3。
如果您没有捕获方法返回的内容,则不会发出警告。但是从swift 3开始,你必须使用返回值,如果你不想要,可以使用@discardable result
属性。
在ObjC中,如果你想警告你可以使用warn_unused_result
属性。
-(int) mymethod : (int) a __attribute__((warn_unused_result)){
return 2;
}
- (BOOL)doSomething {
return 2;
}
[self doSomething];
[self mymethod:2];//warning:ignoring return value of a function