我是否必须在
中的.m类文件中声明所有私有方法@interface ClassName()
//Privare Methods
@end
之前
@implementation ClassName
// Implementation of Private & Instance methods
@end
我正在实施的每种方法&那么使用其他实例方法(在.h文件中声明的方法)?
X-Code 4不会为所有私人方法提供警告,但仅限于少数。例如,它警告我在手势处理函数内部调用的方法,但不在其他例程/方法中。我很困惑,因为声明所有非实例方法或只是声明我得到警告的那些。
答案 0 :(得分:3)
XCode不会警告在调用点之前出现的方法:
@implementation
- (void) foo:(float)x;
{
NSLog(@"%f", x); // prints 15.000000
}
- (void) bar;
{
[self foo:15.0]; // no warning
[self baz:15.0]; // warning
}
- (void) baz:(float)x;
{
NSLog(@"%f", x); // prints 0.000000 instead of 15.0
}
@end
强烈建议您声明警告的方法,上面的代码举例说明原因。
答案 1 :(得分:1)
不,您不必声明您实施的每个方法。当您调用的方法在.m文件中调用它的方法之后定义时,需要声明:
- (void) methodA {
[self methodB]; //here you will get a warning if you don't define methodB it in a private class extention
}
- (void) methodB {
}