【发布时间】:2014-11-12 16:07:06
【问题描述】:
我正在使用 Swift 从objective-c 类(JSONModel)调用初始化程序
该类包含一些初始化程序:
-(instancetype)initWithString:(NSString*)string error:(JSONModelError**)err;
-(instancetype)initWithString:(NSString *)string usingEncoding:(NSStringEncoding)encoding error:(JSONModelError**)err;
-(instancetype)initWithDictionary:(NSDictionary*)dict error:(NSError **)err;
-(instancetype)initWithData:(NSData *)data error:(NSError **)error;
由于我想调用 initWithDictionary 之一,所以我编写了类似的代码
var error:NSError
var loginRes = RegisterResponse(dictionary: dict , error: &error)
其中,RegisterResponse 是 JSONModel 的子类,dict 是预先使用的 Dictionary 变量
但是,编译器抱怨如下: 调用中缺少参数“usingEncoding”的参数。
似乎编译器认为我在调用
-(instancetype)initWithString:(NSString *)string usingEncoding:(NSStringEncoding)encoding error:(JSONModelError**)err;
而不是第三个。有什么解决办法吗?
【问题讨论】:
-
试试
var error:NSError? -
删除了我的答案,尽管您使用的是第一个初始化程序。 @MartinR 的评论应该是解决方案
标签: ios objective-c swift