我一直在尝试在NSArray上创建一个类别,并查看NSArray的接口(interface),我假设添加一个返回ObjectType的方法是:

// interface
- (nullable ObjectType)giveMeAnObject;

// implementation
- (nullable ObjectType)giveMeAnObject
{
    ObjectType object = nil;
    return object;
}

但是,这不起作用,并且我在返回类型中收到错误消息 Expected')'

最佳答案

似乎可以在接口(interface)中使用轻量级泛型,但不能在实现中使用。

@interface NSArray<ObjectType> (MyAdditions)

- (nullable ObjectType)giveMeAnObject; // specify return type

@end


@implementation NSArray (MyAdditions)

- (id)giveMeAnObject // use id for the implementation
{
    return nil;
}

@end

如果您也想在@implementation块中查看它们,则可能要提交enhancement request

关于objective-c - 有没有一种方法可以在NSArray的类别中使用ObjectType?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32673975/

10-09 16:27