Objective-C类名用+

dai*_*dai 5 objective-c naming-conventions objective-c-category

类名,说UIImage+Something或是否UIImageView+Somethingelse意味着它就像一个习惯UIImageUIImageView

ben*_*ado 14

我想你正在查看类别的文件名,而不是类.+在类名中或Objective-C中的任何其他标识符中不允许使用加号字符.

Objective-C类别是一种将方法(但不是实例变量)添加到您不一定拥有源的类的方法.例如,如果您经常想要制作UIImages的倒置副本,则可以使用类别将upsideDownImage方法添加到UIImage类中.

将此代码保存在一个名为UIImage+UpsideDown.m(带有附带的头文件UIImage+UpsideDown.h)的文件中是很常见的.

  • 将新方法添加到Cocoa提供的类中通常是一个非常糟糕的主意,而不确保名称是合理唯一的.如果你想这样做,你应该选择一个前缀并将它放在选择器的开头(就像你对类名一样).如果你不这样做,并且Apple将来会提供自己的同名方法,你的类别将覆盖它,并可能导致代码中的错误,认为它正在调用该方法的Apple实现. (3认同)