Objective c 如何创建具有公共帮助程序的实用程序类?

Objective c 如何创建具有公共帮助程序的实用程序类?,objective-c,Objective C,我想用我需要的常用函数创建一个实用程序类。所以它们必须是静态的,并且不泄漏内存 假设我想添加将NSString转换为NSNumber的函数: NSNumberFormatter * f = [[NSNumberFormatter alloc] init]; [f setNumberStyle:NSNumberFormatterDecimalStyle]; NSNumber * myNumber = [f numberFromString:@"42"]; [f release]; 我怎样才能返回

我想用我需要的常用函数创建一个实用程序类。所以它们必须是静态的,并且不泄漏内存

假设我想添加将NSString转换为NSNumber的函数:

NSNumberFormatter * f = [[NSNumberFormatter alloc] init];
[f setNumberStyle:NSNumberFormatterDecimalStyle];
NSNumber * myNumber = [f numberFromString:@"42"];
[f release];
我怎样才能返回结果而不泄漏

我是否必须为此使用autorelease?

在返回所有权不确定的对象时,使用autorelease避免内存泄漏
NSNumber
numberFromString:
方法已经返回了一个自动删除的值,因此您不需要在这种情况下执行任何特殊操作。对于其他类的对象,可以执行以下操作:

MyClass *ret = [[[MyClass alloc] initWithSomeValue:42] autorelease];
请注意,如果使用ARC,则无需执行以下任何操作:编译器足够聪明,可以为您计算出大部分内容

在Objective C中,Java/C++/C的静态方法称为类方法。您可以在声明中用
+
而不是
-
来表示它们,并且记住您不能从实现中访问实例方法

在标题中:

@interface MyHelper : NSObject
+(NSString*)format:(NSNumber*)num;
@end
在实施过程中:

@implementation MyHelper

+(NSString*)format:(NSNumber*)num {
    return [num stringValue];
}

@end

您能告诉我如何设置具有静态方法的实用程序类吗?