0

可能重复:
创建新实例的类方法

[[class alloc] init]你将如何在 Objective-c 中声明一个构造函数,这将允许你在声明期间跳过这一步;不要说例如Fraction* somefrac=[[Fraction alloc] init];,只要说Fraction* somefrac,构造函数会做剩下的事情。

4

2 回答 2

3

这将实例化对象并返回它。遵循命名约定,您需要将其设置为autorelease返回的 'd 对象。

+ (id)fraction
{
    return [[[self alloc] init] autorelease];
}

使用它

Fraction *fraction = [Fraction fraction];

这遵循与苹果提供的类相同的模式,例如

NSArray *myArray = [NSArray array];
于 2011-11-20T18:45:48.173 回答
0
+(Fraction *) fraction
{
    return [[[Fraction alloc] init] autorelease];
}

然后你可以使用

Fraction *frac = [Fraction fraction];

这种风格在objective c中被大量使用

于 2011-11-20T18:46:06.997 回答