gpt4 book ai didi

ios - 将 Obj C 转换为 Swift 错误 :type of expression is ambiguous without more context

转载 作者:行者123 更新时间:2023-11-29 01:40:57 26 4
gpt4 key购买 nike

我一直在我的 swift 项目中使用 objC 框架,因此我将 objC 方法转换为 swift。 objC方法如下:

[[MySingleton sharedInstance] provisionUserWithPIN:pin
organizationID:kOrgID
accessToken:kOrgToken
completion:^(NSString *UID, User *user) {
}];

我的快速转换是:

 MySingleton.sharedInstance().provisionUserWithPIN(pin, organizationID: kOrgID, accessToken: kOrgToken) {(UID: String, user: User) in
}

我收到错误:表达式类型不明确,在 ( 中的 ProvisionUserWithPIN 后没有指出更多上下文。

我不知道我做错了什么。坚持了几个小时。

声明:

- (void)provisionUserWithPIN:(NSString *)PIN organizationID:(NSString *)organizationID accessToken:(NSString *)accessToken completion:(void (^)(NSString *UID, User *user))completion;  

最佳答案

你应该注意到在 Objective-C 中这样声明的参数

(NSString *)something

在 Swift 中变成这个

something:String

但它实际上被翻译成这样:

something:String!

所以你可以在 Swift 中调用你的 Objective-C 方法

    MySingleton.sharedInstance().provisionUserWithPIN(
"pin",
organizationID: "orgID",
accessToken: "accessTken") { (UID: String!, user: User!) -> () in

}

希望这对您有所帮助。

关于ios - 将 Obj C 转换为 Swift 错误 :type of expression is ambiguous without more context,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32384728/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com