2011-03-07 55 views

回答

1

我建议选择你自己的项目或公司的前缀(如NS或AV以上),并坚持下去。所以,如果你的前缀是AB:

  • ABMegaTopKeyconst变量
  • AB_MEGA_TOP_FLAG为#定义

苹果使用不同的风格不同,我想,对谁写的项目是什么时候写的。

0

kName用于字符串或变量常量。 NAME_KEY用于#define常量。

+0

这看起来不正确,看AV基金会错误常数 “的NSString * const的AVErrorDeviceKey;”例如,它们不是前缀。 – 2011-03-07 15:30:18

+0

AV是框架的前缀,但在您的代码中,您的常量永远不会像那样命名。 – malinois 2011-03-07 15:34:09

+0

我还会指出'NSOrderedSame'是一个常量/枚举。 – 2011-03-07 15:36:01

0

kName是Apple风格,而NAME_KEY在其他语言中更为普遍。做一个更多的研究:k is hungarian notation

0

我总是使用来自主要C背景的第三种风格,但我通常会在框架上放置一个前缀,例如,

NSString* const JP_NAME_KEY = @"name"; 
0

在命名库中有一些可见的'文化'命名常量。

我通常使用大写骆驼用下划线来分隔较长的名称声明常量毫不夸张地说:

    • 前缀与组织机构代码
    • 然后用库前缀(如适用),然后前缀它按类型或类别

      ORGConstantName

      ORGLibraryType_ConstantName

      ORGLibraryCategory_ConstantName

    是冗长的,但它避免了冲突,并在不断的只适用于一定的范围,种类,图书馆或其他方面它是真正清楚。

    无论你决定,只要确保它是一致的。

  • 2

    根据用于可可编码准则,与常量创建constances建议立即进行删除看起来像这样:

    为常量的常量的格式由下面的声明例示:

    const的浮动NSLightGray;

    要查看准则click here