在同一个结构体中,定义不同的构造函数,如果传值类型相同,但是外部名称不一样,可以当做不同的构造函数,这就java的区别很大,例子如下:
struct Celsius {
var temperatureIC: Double = 0.0
init(fF fahrenheit: Double){
temperatureIC = (fahrenheit - 32.0) / 1.8;
}
init(fK kelvin: Double){
temperatureIC = kelvin - 273.15;
}
}
也可以内部参数一样
struct Celsius {
var temperatureIC: Double = 0.0
init(fF fahrenheit: Double){
temperatureIC = (fahrenheit - 32.0) / 1.8;
}
init(fK fahrenheit: Double){
temperatureIC = fahrenheit - 273.15;
}
}