在Objective-C中对NSDictionary进行typedef的合法方法是什么?

拉胡尔

我正在尝试在Swift中使用Objective-C API,并且必须将Swift字典类型转换为NSSDictionary,但是如果可以通过某种方式以以下书面格式声明NSDictionary,则可以略过多余的类型转换。

typedef NSDictionary* NSDictionary<NSString *, id> *;

在我的Objective-C API中,有几个字典,我希望将它们全部转换成上述typdef。

代码不同

您正在尝试将所有都重新定义NSDictionaryNSDictionary<NSString *, id>那是很大的禁忌。而是创建您自己的类型:

typedef NSDictionary<NSString *, id> MyDictionary;

// Usage
MyDictionary * dict = [MyDictionary dictionaryWithObjectsAndKeys:@1,@"one", @2,@"two", @3,@"three", nil];

迅速:

typealias MyDictionary = [String: Any]

let aDict: MyDictionary = [
    "one": 1, "two": 2, "three": 3
]

func doSomething(aDict: MyDictionary) {
    // ...
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章