Swift プロパティ
プロパティ
- 型に紐付いた値
- 型が表すものの属性の表現などに使用される
struct 構造名 {
var プロパティ名: プロパティの型 = 式 // 再生可能なプロパティ
let プロパティ名: プロパティの型 = 式 // 再生不可能なプロパティ
}
struct 構造名 {
var プロパティ名: プロパティの型 = 式 // 再生可能なプロパティ
let プロパティ名: プロパティの型 = 式 // 再生不可能なプロパティ
}
プロパティは型のインスタンスに紐付くインスタンスプロパティと、その型そのものに紐付くスタティックプロパティに分類される。
インスタンスプロパティ
- 型のインスタンスに紐付くプロパティ
- インスタンスごとに異なる値を持たせることができる
- varやletで定義したプロパティは、デフォルトではインスタンスプロパティとなる
struct MyNameIs {
var name = "TERADA"
}
let myNameIsEng = MyNameIs()
var myNameIsJpn = MyNameIs()
myNameIsJpn.name = "寺田"
let englishName = myNameIsEng.name //TERADA
let japaneseName = myNameIsJpn.name //寺田
スタティックプロパティ
- 型自身に紐付くプロパティ
- インスタンス間で共通する値の保持などに使用
宣言方法
プロパティ宣言の先頭にstaticを追加。スタティックプロパティにアクセスするには型の前に.とスタティック名を付けて型名.スタティックプロパティ名のように書く
struct Greeting {
static let signature = "Sent from iPhone"
var to = "Terada"
var body = "Hello!"
}
func print(greeting: Greeting){
print("to: \(greeting.to)")
print("body: \(greeting.body)")
print("signature: \(Greeting.signature)")
}
let greeting1 = Greeting()
var greeting2 = Greeting()
greeting2.to = "Kunio"
greeting2.body = "Hi!"
print(greeting: greeting1)
print("---")
print(greeting: greeting2)
to: Terada
body: Hello!
signature: Sent from iPhone
---
to: Kunio
body: Hi!
signature: Sent from iPhone
Author And Source
この問題について(Swift プロパティ), 我々は、より多くの情報をここで見つけました https://qiita.com/KnoTrd/items/074020a63f563b613dae著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .