iPhone方法原型

时间:2012-03-01 02:42:54

标签: iphone objective-c ios ios4

我一直在类文件中设置我的方法原型,而不是头文件。如果我使用头文件,我不确定它是否真的有所作为。

以这种方式设置原型是否有缺点或优势?

#import "SettingsViewController.h"

@interface SettingsViewController()

    - (void)syncSettings;

@end

@implementation SettingsViewController

- (void)syncSettings
{
    // Code Here
}

// Other Methods

@end

2 个答案:

答案 0 :(得分:2)

您限制为.m的任何内容都不会被其他.m文件看到。因此,作为一般规则,只将您想要发布的接口功能放入.h中是有利的 - 不要将您打算保密的方法放在那里,也不要将实例变量放在那里。

将实现细节保留在未公开的公共接口之上是没有缺点的。

答案 1 :(得分:1)

@Tommy非常正确。应该注意的是,这些方法是不可见的,但是一个有进取心(读:危险)的程序员仍然可以使用它们。 Objective-C没有强制私有方法的概念。

FYI,构造@interface MyClass ()被称为类扩展类继续。如果您想稍后提出其他问题,正确的术语将会有所帮助。