未使用 Struct 初始化变量时如何处理默认初始化程序
How to Deal with Default Initializer when variable are not initialized Using Struct
我正在使用 swift 结构并在我的结构变量未初始化时尝试使用其默认初始化程序,我尝试了非可选变量和可选变量,但仅显示 "memberwise Initializer"。
下面是带有可选变量的示例
struct myFirstStruct {
var value1:String?
var value2:String?
}
下面是非可选变量的示例
struct myFirstStruct {
var value1:String
var value2:String
}
它只给出
myFirstStruct(value1: <#String?#>, value2: <#String?#>)
我想使用 myFirstStruct()
帮帮我。 :)
需要设置默认值。
struct myFirstStruct {
var value1:String? = nil
var value2:String? = nil
}
let object = myFirstStruct()
Xcode 只向您显示 'member-wise' 初始化程序,但使用 myFirstStruct()
是完全有效的,不传递任何参数,因为您的所有变量都有默认值。
struct myFirstStruct {
var value1:String?
var value2:String = "InitialString"
}
let s1 = myFirstStruct()
// value1 = nil, value2 = "InitialString"
let s2 = myFirstStruct(value1: "Hello", value2: "World")
// value1 = "Hello", value2 = "World"
我正在使用 swift 结构并在我的结构变量未初始化时尝试使用其默认初始化程序,我尝试了非可选变量和可选变量,但仅显示 "memberwise Initializer"。
下面是带有可选变量的示例
struct myFirstStruct {
var value1:String?
var value2:String?
}
下面是非可选变量的示例
struct myFirstStruct {
var value1:String
var value2:String
}
它只给出
myFirstStruct(value1: <#String?#>, value2: <#String?#>)
我想使用 myFirstStruct()
帮帮我。 :)
需要设置默认值。
struct myFirstStruct {
var value1:String? = nil
var value2:String? = nil
}
let object = myFirstStruct()
Xcode 只向您显示 'member-wise' 初始化程序,但使用 myFirstStruct()
是完全有效的,不传递任何参数,因为您的所有变量都有默认值。
struct myFirstStruct {
var value1:String?
var value2:String = "InitialString"
}
let s1 = myFirstStruct()
// value1 = nil, value2 = "InitialString"
let s2 = myFirstStruct(value1: "Hello", value2: "World")
// value1 = "Hello", value2 = "World"