在我想添加到我的项目的库中,有一个名为 NSString-Base64Extensions.h(带有 NSString-Base64Extensions.m)的文件和一个名为 NSString+PECrypt.h(带有 NSString+PECrypt.m)的文件。
这意味着什么?
在我想添加到我的项目的库中,有一个名为 NSString-Base64Extensions.h(带有 NSString-Base64Extensions.m)的文件和一个名为 NSString+PECrypt.h(带有 NSString+PECrypt.m)的文件。
这意味着什么?
这是命名文件的约定,其中包含现有类的类别。- 和 + 符号只是表达方式不同,除了风格没有区别。
您可以期望 NSString+PECrypt.m 包含一个添加到 NSString
. 同样,NSString-Base64Extensions 是NSString
.
类别是在 Objective-C 中向现有类添加方法的一种方式,无需子类化,此处将进行更详细的讨论。
如果编写文件的程序员遵循 Cocoa 命名约定,那么这些文件就是实现了类的类别的文件。例如,在 中NSString-Base64Extensions.h
,应该有以下类别实现:
@implementation NSString (Base64Extensions)
// ...
@end
顺便说一句,类和类别名称之间的分隔符是“-”还是“+”号并不重要,它可以是下划线或开发人员喜欢的任何东西。
它们是用于包含特定类的文件的约定。
NSString+PECrypt.h ---> NSString : class name, PECrypt : category name