我有一个iOS应用程序,我正在写作。我已离开#define
以创建我的常量值。关于这些样式声明的使用,我有几个问题:NSString *const segueToMainMenu
如果我在内部使用这些内容,请将它们放在.m文件中。但是,我应该将它们放在@implementation
区块周围还是外面?或者它是否重要?我在内心思考,因为它们是针对实施而非全球性的,但我不确定。任何细节都表示赞赏。
如果我使用extern
关键字创建更全局的范围,并且我使用常量文件对(Constants.h / Constants.m),我是否需要放置@interface
部分中的那些,然后在@implementation
部分定义它们?与仅使用Constants.h文件并将其包含在其他标头中的旧方法相比,有什么好处?为什么我现在需要两个文件?
标准做法仍然是使用" k"来命名常量。前缀(例如kAnimationDuration
)或我现在应该做MainMenuViewControllerAnimationDuration
之类的事情吗?我想象是的,如果是的话,对于1号(即非外部)的常数,我如何命名它们是否重要?换句话说,那些在我的实现之外是可见的吗?
非常感谢澄清。
答案 0 :(得分:5)
无论是将它们放在实现块中还是没有 - 只有方法是类实现的一部分,因此常量的范围不会改变。
k
前缀现在有点过时了。通常的方法是将常量命名为<prefix><name>
,例如“MDSomeConstant”。