【问题标题】:Initialize a class in Swift在 Swift 中初始化一个类
【发布时间】:2021-09-09 04:04:57
【问题描述】:

也许这是超级基本的东西,但我仍然不确定 Swift 中以下代码之间的区别。

  • private let myViewController = MyViewController()
  • private let myViewController: MyViewController!

我在 Swift 中创建变量时可以互换使用它们,但它们之间有区别吗?另外,它的初始化方式是否有特定的名称? (我想做一些谷歌搜索上面代码的区别,但是由于我不确定初始化的名称,所以我现在无法谷歌搜索......)。

【问题讨论】:

标签: swift class variables initialization


【解决方案1】:

private let myViewController = MyViewController() 表示myViewControllerMyViewController 类的实例,只要它在类中使用。

但是private let myViewController: MyViewController!在这种情况下我们必须在使用myViewController之前将MyViewController的实例分配给myViewController,否则会崩溃。

【讨论】:

  • @iOSArchitect.com 非常感谢您的快速回复!我想我明白了:它是否有实例。所以我觉得当我需要初始化类时,使用第一个实例非常有用,因为第二个使用 ! sign 必须再次分配实例,但是是否有一个有用的案例我应该使用“private let myVC: MyVC!” ?由于我必须将实例分配给它,我觉得第一个实例化非常有用......
  • 非常感谢您的快速回复!我想我明白了:它是否有实例。所以我觉得当我需要初始化类时,使用第一个实例非常有用,因为第二个使用 ! sign 必须再次分配实例,但是有没有一个有用的情况我应该使用“private let myVC: MyVC!” ?由于我必须将实例分配给它,我觉得第一个实例化非常有用......
  • @Yuuu 第二行可以在您需要该实例时使用,在某些情况下并非在所有类中。因此,在这种情况下,您初始化该实例并使用它。
猜你喜欢
  • 1970-01-01
  • 2019-10-04
  • 1970-01-01
  • 1970-01-01
  • 2021-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多