为什么这个 Swift prepareForSegue 函数覆盖有实例化?

Why does this Swift prepareForSegue function override have instantiation?

我正在学习 Swift 并且我正在努力将项目从一个 segue 传递到另一个 segue。从代码中我看来,您正在创建一个名为 "secondVC" 的新 ViewController 对象。在第 3 行中,在我看来它通过将这个新控制器设置为等于 segue.destinationViewController 来复制 segue.destinationViewController。换句话说,我不明白 secondVC 实际上是对第二个视图控制器的引用,而不是重复的实例。我的思想错在哪里?这是代码:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
 var secondVC:SecondViewController = SecondViewController()
 secondVC = segue.destinationViewController as SecondViewController
 secondVC.delegate = self
}

非常感谢!

我也在学习 swift - 根据我自己的经验,您可以在 segue 开始之前使用 prepareForSegue 将数据传递给 secondVC。

这是一些示例代码。我使用 prepareForSegue 将任务数据传递到第二个视图控制器中。还有其他方法可以做到这一点,这只是一种方法。

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "showTaskDetail" {
        let detailVC: TaskDetailViewController = segue.destinationViewController as TaskDetailViewController
        let indexPath = self.tableView.indexPathForSelectedRow()
        let thisTask = fetchedResultsController.objectAtIndexPath(indexPath!) as TaskModel
        detailVC.detailTaskModel = thisTask
        detailVC.delegate = self
    }