包含其自身类型属性的 Swift 类

C. 卷轴

我创建了一个 iOS 应用程序来仲裁柔术/柔道比赛。我的应用程序有一Fighter堂课。在这个Fighter类中,我也有一个opponent类型属性Fighter所以我有这样的事情:

class Fighter {
    ...
    var opponent: Fighter?
    ...
}

var fighter1 = Fighter()
var fighter2 = Fighter()
fighter1.opponent = fighter2
fighter2.opponent = fighter1

我宣布它是可选的,但我被卡住了,因为我不希望它是可选的,战士必须有对手。它以这种方式工作正常,但我不喜欢它,我最终得到了很多不必要的if let!. 加上它很丑。

我怎样才能以更好、更安全的方式做到这一点?

迪伦

创建一个包含两个 Fighter 对象的 Match 对象,而不是让一个 Fighter 包含另一个 Fighter。一个类型应该很少包含它自己。

例如:

struct Match{
    let fighterOne: Fighter
    let fighterTwo: Fighter
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Swift嵌套类的属性

来自分类Dev

Swift嵌套类的属性

来自分类Dev

Swift中类的存储类型属性

来自分类Dev

通过函数Swift传递具有其属性的类(UILabel)

来自分类Dev

Swift:实现协议的类的类型

来自分类Dev

Swift var类型用于类

来自分类Dev

方法不会从其超类 swift 覆盖

来自分类Dev

Swift:查看包含扩展的完整类API

来自分类Dev

Swift 3类型推理混乱

来自分类Dev

Swift:如何从函数返回类类型

来自分类Dev

在Swift中从类的实例获取类型

来自分类Dev

Swift'NilLiteralConvertible'错误:可选的类类型

来自分类Dev

在Swift中从类的实例获取类型

来自分类Dev

获取实现协议swift的类类型

来自分类Dev

Swift 3类型转换错误

来自分类Dev

在Swift属性中要求协议和类

来自分类Dev

Swift:如何使用类名声明属性

来自分类Dev

Swift类中的属性是否自动引用?

来自分类Dev

符合协议和类的Swift属性

来自分类Dev

Swift UISearchbar如何搜索类的属性

来自分类Dev

Swift-在类中定义属性

来自分类Dev

Swift:如何使用类名声明属性

来自分类Dev

在Swift中观察ObjC类的属性

来自分类Dev

获取属性不会使用UICollectionCell覆盖Swift中其超类的任何属性

来自分类Dev

Swift-在getter上返回其自身属性,并在setter上进行自身设置

来自分类Dev

Swift协议定义返回自身的类方法

来自分类Dev

Swift:数组属性,其元素同时符合一个类和多个协议

来自分类Dev

在 swift 中使用内部结构时引用包含类的属性

来自分类Dev

Swift错误:“找不到'SKScene'的接口声明,其超类”