0x00 Lesson
Initializers
are special methods that provide different ways to create your struct. All structs come with one by default, called their memberwise initializer
- this asks you to provide a value for each property when you create the struct.
You can see this if we create a User
struct that has one property:
struct User {
var username: String
}
When we create one of those structs, we must provide
a username:
var user = User(username: "twostraws")
We can provide our own
initializer to replace the default one. For example, we might want to create all new users as "Anonymous"
and print a message, like this:
struct User {
var username: String
init() {
username = "Anonymous"
print("Creating a new user!")
}
}
You don’t write func
before initializers, but you do need to make sure all properties have a value before the initializer ends.
Now our initializer accepts no parameters, we need to create the struct like this:
var user = User()
user.username = "twostraws"
0x01 我的小作品
欢迎体验我的作品之一:小汉字-XHanzi
汉字书写入门,常用汉字 3800
个,二级字表 2200
个
App Store
搜索即可~