10-3. グローバル変数とゾーン変数
5205 ワード
グローバル変数とゾーン変数
Propertyを計算および観察するために、前に説明した機能は、グローバル変数および領域変数でも使用できます.グローバル変数は、関数、メソッド、モジュール、またはタイプコンテキストの外部で定義された変数です.領域変数は、関数やメソッドなどの内部で定義される変数です.保存された変数(保存されたプログラムなど)は、タイプの値にリポジトリを提供し、値の設定とクエリーを許可します.グローバル定数と変数の計算は常に遅く,遅延記憶のプログラムと類似しているため,不活性は必要ない.しかし,領域定数や変数は決して緩やかに計算されない.func someFunction() {
@SmallNumber var myNumber : Int = 0
myNumber = 10
//10의 값을 가진다.
myNumber = 24
//이제 12의 값을 가진다. 프로퍼티 래퍼가 24보다 큰 숫자를 허용하지 않기 떄문이다.
タイプのプロパティ
インスタンス・プログラムは、特定のタイプのインスタンスに属するプログラムです.タイプの新しいインスタンスを作成するたびに、他のインスタンスとは異なる一意のproperty値が設定されます.さらに、このタイプは、インスタンスではなくタイプ自体に属するpropertyを定義することができる.これをタイプpropertyと呼び、インスタンスpropertyは特定のタイプのインスタンスに属するpropertyです.タイプの新しいインスタンスを作成するたびに、他のインスタンスとは異なる一意のproperty値が設定されます.さらに、このタイプは、インスタンスではなくタイプ自体に属するpropertyを定義することができる.これをタイプ番組と言います.
タイプpropertyはstaticキーワードとして宣言され、すべてのインスタンスの一般的な値を定義するのに役立ちます.クラスタイプの計算されたPropertyはclassキーワードで親クラスの実装を再定義できます.struct someStructure {
static var storedTypeProperty = "Some value"
static var computedTypeProperty : Int {
return 1
}
}
enum someEnum {
static var storedTypeProperty = "Some value"
static var computedTypeProperty : Int {
return 6
}
}
class someClass {
static var storedTypeProperty = "Some value"
static var computedTypeProperty : Int {
return 27
}
class var overrideableComputedProperty : Int {
return 107
}
}
タイプpropertyは、インスタンス内のpropertyのようにポイントを介してクエリーと設定を構築できます.特徴は括弧を明記しないことです.print(SomeStructure.storedTypeProperty)
//some Value를 출력한다.
someStructure.storedTypeProperty = "Another value"
//이제 Another value 값을 가진다.
print(someStructure.storedTypeProperty)
//어나더 밸류를 출력한다.
print(someEnum.storedTypeProperty)
//some Value를 출력한다.
Reference
この問題について(10-3. グローバル変数とゾーン変数), 我々は、より多くの情報をここで見つけました
https://velog.io/@devleeky16498/10-3.-전역과-지역변수Global-and-Local-Variables
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
func someFunction() {
@SmallNumber var myNumber : Int = 0
myNumber = 10
//10의 값을 가진다.
myNumber = 24
//이제 12의 값을 가진다. 프로퍼티 래퍼가 24보다 큰 숫자를 허용하지 않기 떄문이다.
インスタンス・プログラムは、特定のタイプのインスタンスに属するプログラムです.タイプの新しいインスタンスを作成するたびに、他のインスタンスとは異なる一意のproperty値が設定されます.さらに、このタイプは、インスタンスではなくタイプ自体に属するpropertyを定義することができる.これをタイプpropertyと呼び、インスタンスpropertyは特定のタイプのインスタンスに属するpropertyです.タイプの新しいインスタンスを作成するたびに、他のインスタンスとは異なる一意のproperty値が設定されます.さらに、このタイプは、インスタンスではなくタイプ自体に属するpropertyを定義することができる.これをタイプ番組と言います.
タイプpropertyはstaticキーワードとして宣言され、すべてのインスタンスの一般的な値を定義するのに役立ちます.クラスタイプの計算されたPropertyはclassキーワードで親クラスの実装を再定義できます.
struct someStructure {
static var storedTypeProperty = "Some value"
static var computedTypeProperty : Int {
return 1
}
}
enum someEnum {
static var storedTypeProperty = "Some value"
static var computedTypeProperty : Int {
return 6
}
}
class someClass {
static var storedTypeProperty = "Some value"
static var computedTypeProperty : Int {
return 27
}
class var overrideableComputedProperty : Int {
return 107
}
}
タイプpropertyは、インスタンス内のpropertyのようにポイントを介してクエリーと設定を構築できます.特徴は括弧を明記しないことです.print(SomeStructure.storedTypeProperty)
//some Value를 출력한다.
someStructure.storedTypeProperty = "Another value"
//이제 Another value 값을 가진다.
print(someStructure.storedTypeProperty)
//어나더 밸류를 출력한다.
print(someEnum.storedTypeProperty)
//some Value를 출력한다.
Reference
この問題について(10-3. グローバル変数とゾーン変数), 我々は、より多くの情報をここで見つけました https://velog.io/@devleeky16498/10-3.-전역과-지역변수Global-and-Local-Variablesテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol