Swift 3 nserror期望呼叫类型之后



我正在将Google登录到我的Xcode项目中。我正在设置一个错误配置器,以便登录将起作用,但是当我尝试将错误定义为nserror时,它会不断给我错误。我在做什么错?

class logInController: UIViewController, GIDSignInUIDelegate {
    func CGRectMake(_ x: CGFloat, _ y: CGFloat, _ width: CGFloat, _ height: CGFloat) -> CGRect {
        return CGRect(x: x, y: y, width: width, height: height)
    }
    override func viewDidLoad(){
        super.viewDidLoad()
        var error = NSError?
        GGLContext.sharedInstance().configureWithError(&error)
        if error != nil {
            print(error)
            return
        }
        GIDSignIn.sharedInstance().uiDelegate = self
        let signInButton = GIDSignInButton(frame: CGRectMake(0, 0, 100, 50))
        signInButton.center = view.center
        view.addSubview(signInButton)
    }    
}

xcode说,"expected member name or constructor call type after name",但是当我添加类似域或UserInfo之类的东西时,它会告诉我,"argument labels [] do not match any available overloads"

您要么声明使用构造函数的类型

var error = NSError(domain:...

或作为可选指针

var error : NSError?

要将变量用作inout参数,您必须使用后者。

ps:习惯了Swift 3更改,例如CGRect传递所有参数标签...

最新更新