返回类型为class的方法

时间:2016-01-20 19:46:24

标签: ios objective-c iphone xcode singleton

编写方法

返回类型MyClass对象并带有多个参数

我试过

-(MyClass *Obj)mymethod:(NSString*)name withAge:(int)age
{
//do stuff
Obj.name=name;
Obj.age=age;
return Obj;
}

在其他一些我想称之为上述功能的课程中,我如何称呼它?

1 个答案:

答案 0 :(得分:1)

您可以编写如下方法:

 -(MYClass *)myMEthod:(NSString *) name withAge:(int)age
   {
         MYClass *myObj=[[MYClass alloc]init];
         myObj.name=name;
         myObj.age=age;

        return myObj;
    }

如果你想让它成为单身,那就使用静态对象和dispatch_once

使这成为一个单身人士:

 +(MYClass *)myMEthod:(NSString *) name withAge:(int)age
   {
        static MYClass *_myObj=nil;

        static dispatch_once_t oncePredicate;
    dispatch_once(&oncePredicate, ^{
        _myObj = [[MYClass alloc]init];
    });
          _myObj.name=name;
          _myObj.age=age;
        return _myObj;

    }

在其他课程中,您只需导入此课程,然后通过

调用它
  [MYClass myMethod:@"" withAge:12];