我想实现像如何初始化一些类型的多个变量在一行
var a, b, c: MyType = MyType()
,但此行不会编译,因为编译器将类型标注MyType
仅适用于可变c
从而a
和b
缺少类型注释或类型推断的初始值。
以下的都是法律规范:
// legal but verbose
var a = MyType()
var b = MyType()
var c = MyType()
// legal but verbose to initialize
var a, b, c: MyType
a = MyType()
b = MyType()
c = MyType()
这两种风格我能想到的都是合法的,但不知何故繁琐,尤其是如果有几十个同类型的变量。
是否有任何优雅的方式来实现这一目标?
IMO,在同一行声明多个变量看起来不太好。 – Sweeper
如果你有一个默认值,最接近的是元组synatx的使用。 –