Objective-C到Swift翻译问题

mar*_*tin 0 translation objective-c avcapturesession swift

我正在尝试将这个简单的代码行转换为Swift,但无法弄清楚如何编写它:

AVCaptureConnection *videoConnection = nil;
Run Code Online (Sandbox Code Playgroud)

我试过了:

    let videoConnection: AVCaptureConnection = nil

    let videoConnection: AVCaptureConnection = false

    var videoConnection:AVCaptureConnection = AVCaptureConnection()
            videoConnection = nil

    var videoConnection:AVCaptureConnection = AVCaptureConnection()
            videoConnection = false

var videoConnection:AVCaptureConnection = AVCaptureConnection()
            videoConnection.active = false

var videoConnection:AVCaptureConnection = AVCaptureConnection()
            videoConnection.active = nil
Run Code Online (Sandbox Code Playgroud)

关于如何写这个的任何建议是Swift将不胜感激.

Ben*_*Ben 5

如果你想用nil"初始化"某些东西,它必须是一个可选的.所以

var videoConnection: AVCaptureConnection? = nil
Run Code Online (Sandbox Code Playgroud)

要么

var videoConnection: AVCaptureConnection?
Run Code Online (Sandbox Code Playgroud)

是对的.

  • 在任何一种情况下使用`let`都会给你一个永远无法改变的'nil`值. (2认同)